перенос объекта в массив, дающий мне пустой массив

#javascript #arrays

#javascript #массивы

Вопрос:

всем привет, у меня есть этот код, в котором я выбираю данные из базы данных и хочу вставить их как объекты внутри массива :

 conn2.query('SELECT date, action FROM actions WHERE ?', [{
  issue_id: data.id
}], function(error, data2) {
  if (error) {
    showNotification('Error :'   error, 'danger', 'glyphicon glyphicon-tasks');
  } else {
    data2.forEach(function(data21) {
      res.push({
        "date": data21.date,
        "description": data21.action
      });
      console.log(res);
    });
  }
});
  

проблема в том, что res всегда пуст….
если я

 console.log({"date": data21.date,"description": data21.action})
  

это дает мне правильный объект…. кажется, что нажатие не является записью.

Отредактировано: спасибо всем, я не смог решить эту проблему, поэтому я использовал officegen, который отлично справился с задачей

Комментарии:

1. вы видите какие-либо ошибки в консоли?

2. Может быть, запрос возвращает noting и data2 является пустым массивом, поэтому res.push никогда не вызывается? Добавить console.log('data2', data2) в начало функции обратного вызова.

3. ! данные

Ответ №1:

Я думаю, вы, должно быть, не объявили res как объект массива res = [] Или, возможно, data2 пуст

Комментарии:

1. console.log({«date»: data21.date,»description»: data21.action})

Ответ №2:

Можете ли вы попробовать

 res.push({date: data21.date,description: data21.action});
console.log(JSON.stringify(res));
console.log(res.toString());