将JS数组UNIX日期整数转换为JS Date对象

时间:2014-09-15 02:03:50

标签: javascript php jquery arrays json

有没有办法使用jQuery将数组中的UNIX纪元整数(1402079444等)转换为JavaScript Date对象(Date.UTC(2014, 9, 14)等)?

我正在尝试将PHP生成的大型JSON数组传递给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]
        ]
    },
]

1 个答案:

答案 0 :(得分:3)

鉴于上面的Json对象,我试试:

array.forEach(function (val) { 
  val.data = val.data.map(function (datum) {
    return [ new Date(datum[0] * 1000), datum[1] ];
  }
}

除非我读错了(我假设数据[0]是UTC值)。

(根据以下反馈编辑,谢谢大家!)