Как я могу использовать цикл для получения одного значения в rowdatapacket, и прямо сейчас я получаю результат вроде
[ RowDataPacket { id: 522, number: '111', test: 'testing' },
RowDataPacket { id: 523, number: '112', test: 'testing 2' } ]
Вот мой код
connection.query('SELECT * FROM test', function (err, rows, fields)
{
if (err) throw err
var id =rows[0].number;
if (id!=req.body.id)
{
res.send("Data not exist");
}
else
{
res.send(rows);
}
})



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете напрямую рассматривать ответ как массив и делать то же самое, что и с любым обычным массивом.
Например,
Чтобы получить первый элемент, выполните rows[0].
Чтобы получить номер с идентификатором 523 в ваших тестовых данных, вы можете сделать это,
const neededResult = rows.filter(row => row.id !== 512); // [{ id: 523, number: '112', test: 'testing 2' }]
neededResult[0].number // 112
Используйте map как const numberList = rows.map(row => row.number). Теперь массив numberList будет содержать все числа.
мы можем использовать res.send два раза (для отображения разных записей) или есть другой способ?
Нет, вы не можете использовать отправку более одного раза. Вы можете сделать что-то вроде res.send({ number: numberList, text: textList }), а затем во внешнем интерфейсе вы можете получить доступ к таким данным, как data.number и data.text.
тогда, если я хочу отображать данные в двух разных местах, что мне делать?
Это относительно. Это зависит от того, что вы используете во внешнем интерфейсе. Задайте отдельный вопрос.
это простой вопрос, как я могу динамически получать число и текст в разных li?
Что ты имеешь в виду? Можете быть более конкретными?
У меня два разных <ul>, и я хочу получить данные как в <ul> (данные числового, так и текстового поля), так как я могу это сделать?
Обратитесь к моему первому комментарию. Замените число в row.number на text, у вас будет текстовый массив. Тогда вы сможете использовать их как хотите.
как я могу использовать цикл для отображения всех чисел