如何正确处理JSON和HighCharts中的日期对象

How to properly deal with date objects in JSON and HighCharts?

本文关键字:日期 对象 HighCharts 正确处理 JSON      更新时间:2023-09-26

日期快让我发疯了。

我有一个在提交时生成对象的表单:

formContents.date is "2011-02-25"
var dateObject = new Date(formContents.date);

所以现在 dateObject 是一个 JS 对象 (星期三 2011 年 2 月 25 日 08:00:00 GMT+0800 (HKT))

当我将其作为 JSON 发送到我的服务器然后再次检索它时,我得到的响应现在是一个字符串。

"Wed Feb 25 2011 08:00:00 GMT+0800 (HKT)"

如果我将此字符串直接插入HighCharts,则不起作用 - HighCharts似乎要求所有日期都采用以下形式:

Date.UTC(2011, 02, 25)

JSON无法发送JS对象或其他东西吗?如何确保我的响应是

Date.UTC(2011, 02, 25)

这样高图就能理解了?

好吧,我对这些问题有点粗暴,所以我的"燧石"解决方案是转换字符串:

a = "Wed Feb 25 2011 08:00:00 GMT+0800 (HKT)";
b = a.split(" ");
c = {
    Jan: 01, Feb: 02, Mar: 03, Abr: 03, May: 05, Jun: 06, 
    Jul: 07, Aug: 08, Sep: 09, Oct: 10, Nov: 11, Dec: 12
};
year = b[3];
month = c[b[1]];
day = b[2];
date = [year, month, day];