2015-09-17 2 views
0

У меня есть декодированная переменная Json с именем objIntChart, которая выглядит следующим образом, когда я console.log() это.Пытается преобразовать объект javascript в массив

objIntChart

Проблема в том, мне нужно его как массив, который выглядит как этот

enter image description here

Я петля Еогеасп как это в попытке решить:

var array = []; 

      objIntChart.forEach(function (entry) { 
       var x = 0++; 
       array.push(x); 
       array.x.push(entry['dateTime']); 
       array.x.push(entry['entries']); 

      }); 

Однако проблема в том, что я не могу сделать push на array.x, потому что он принимает x как имя, а не переменную. Есть ли этому решение?

ответ

2

Держите это просто:

var array = []; 
objIntChart.forEach(function (entry) { 
    array.push([entry['dateTime'], entry['entries']]); 
}); 
+0

Для записи, с вашим подходом вы бы необходимо 'массив [х] = [],' массив [х] .С (..) ' , – deceze

+0

Doh Я глуп. Я на самом деле делал что-то в этом роде, но потом я просто полностью отключился. В любом случае спасибо за ответ –

0

Вы должны использовать array[x] вместо array.x и также делать array[x] = [] или array.push([]) вместо array.push(x) который добавит целое число x, а не пустой массив, в массив.

Кроме того, вам необходимо установить var x = 0; вне вашего шлюза и сделать x++ внутри него. В настоящее время x всегда будет 1, когда вы его используете.

1

Это будет делать, а также:

var arr = objIntChart.map(function (obj) { return [obj.dateTimes, obj.entries]}); 
console.log(arr); 
Смежные вопросы