#mysql #node.js
#mysql #node.js
Вопрос:
я выполняю этот запрос select в базе данных mysql и nodejs, ожидаемыми результатами являются только массив со строковым содержимым, содержащим ссылку: [‘http://hgj ‘,’http://jfhd ‘], но с кодом, который я вставлю, он показывает мне: [{ссылка:»http://hgj },{ссылка:»http://jfhd }] как я могу удалить объекты {link} и вставить в таблицу только строку ‘http …’?
query = "select link from weblist";
var res= await con.query(query, (error, response) => {
console.log('link from database', error || response);
var table = JSON.parse(JSON.stringify(response));
return table ;
});
Ответ №1:
В этом решении есть несколько простых шагов:
- Упорядочить объект с помощью
JSON.stringify
. Теперь это строка - Строка содержит символы, которые вам не нужны, поэтому вы используете
string.replace()
и передаете литерал регулярного выражения, который, независимо от позиции символа или корпуса, удаляет ненужный символ с помощью «» (т.Е. Ничего); - верните эту новую строку с представлением ваших URL-адресов внутри массива
Однострочное решение:
let oneliner = links.map((elem) => {
return JSON.stringify(elem).replace(/[{}"'link:]/gi, "");
})
console.log(oneliner);
// [ 'http: //hgj', 'http://jfhd' ]
Комментарии:
1. Здравствуйте, спасибо за ваш ответ, но как я могу удалить «ссылку» тоже, поэтому, чтобы было понятно, в моем массиве я хочу иметь только [‘ hgj ‘, ‘ jfhd’]