Есть ли способ конвертировать целые числа эпох UNIX (1402079444
и т. д.) в массиве в объекты JavaScript Date (Date.UTC(2014, 9, 14)
и т. д.) используя jQuery?
Я пытаюсь передать большой массив JSON, сгенерированный PHP, в Highmaps.JS, который почти прекрасно работает, однако Highmaps ожидает, что объекты Date и Date не являются допустимыми JSON, поэтому я не могу сгенерировать их с помощью PHP.
jsFiddle моей текущей настройки здесь: http://jsfiddle.net/dwgLtscm/2/
(Ось X не отображает даты должным образом, потому что данные не в правильном формате даты).
[{
"name": "Dissolved Oxygen",
"data": [
[1402079444,9]
]
},
{
"name": "Temperature (Water)",
"data": [
[1401291099,9],
[1401862547,12]
]
},
{
"name": "Temperature (Air)",
"data": [
[1401291099,13],
[1401862547,19]
]
},
]
Учитывая объект Json выше, я бы попробовал:
array.forEach(function (val) {
val.data = val.data.map(function (datum) {
return [ new Date(datum[0] * 1000), datum[1] ];
}
}
Если я не читаю это неправильно (я предполагаю, что data [0] — это значение UTC).
(Отредактировано на основе отзывов ниже, спасибо всем!)
Других решений пока нет …