Доступ к элементам внутри JSON (Node js) - PullRequest
0 голосов
/ 04 декабря 2018

Я получаю данные из базы данных MS SQL как набор записей.Я пытаюсь получить доступ к значениям в наборе записей, однако не могу получить к нему доступ, потому что он находится внутри набора записей.Ниже приведен пример вывода, который я получаю из базы данных.Результат примера показывает выходные данные отладчика.https://i.stack.imgur.com/hfVEC.jpg

Я хочу получить доступ к таким элементам, как время начала, номер задания и т. Д. Внутри набора записей.Как бы мне это сделать?

b.executeSql(sql, function (rows, err) {
    var jobdata = JSON.stringify(rows); //this is where i get the recordsets
    if (err) {
        // httpMsgs.show500(req, resp, err);
        console.log("Error with connection");
    }
    else {
        var Jdata = JSON.parse(jobdata); // I then use parse to try and acces elements

      console.log(Jdata.StartTime); //but this is undefined

}

Что я здесь не так делаю?

Спасибо

Редактировать: это вывод Iполучил, когда я использовал - console.log (строки);

  { recordsets: 
  [ [ [Object] ] ],
  recordset: [ { StartTime: 2018-11-01T15:28:51.000Z, JobNumber: null } ],
  output: {},
  rowsAffected: [ 1 ] }

1 Ответ

0 голосов
/ 04 декабря 2018

Предполагая, что у объекта row всегда будет массив recordset со значениями, вы получите к нему доступ

const StartTime = rows.recordset[0].StartTime;
const JobNumber = rows.recordset[0].JobNumber;

rows = {
  recordsets: [
    [
      // [Object]
    ]
  ],
  recordset: [{
    StartTime: '2018 - 11 - 01 T15: 28: 51.000 Z',
    JobNumber: null
  }],
  output: {},
  rowsAffected: [1]
};

const StartTime = rows.recordset[0].StartTime;
const JobNumber = rows.recordset[0].JobNumber;

console.log(`StartTime is - ${StartTime}`);
console.log(`JobNumber is - ${JobNumber}`);
...