javascript - 如何使用 jQuery 从 Date.UTC 数组中的每个月减去一个月

标签 javascript jquery highcharts utc

我正在为我的新项目使用 highchart 插件,我刚刚注意到在我的数据数组中,日期必须少一个月,因为在 javascript 中,月份从 00 开始(而不是从 01 开始)。我的数组的值是这样的(:

var usdeur = [
    [Date.UTC(2004, 3, 31), 0],
    [Date.UTC(2004, 4, 1), 0.134879956838416],
    [Date.UTC(2004, 4, 2), 0.471580293538753],
    [Date.UTC(2004, 4, 3), 0.473578515121543],
    [Date.UTC(2004, 4, 4), 0.474577625912938],
];

知道如何为每个日期减去一个月以使图表正常工作吗?

谢谢你,并对我糟糕的英语感到抱歉。

最佳答案

如果您可以更改其生成方式,请改为生成它

var usdeur = [
    [Date.UTC(2004, 3 - 1, 31), 0],
    [Date.UTC(2004, 4 - 1, 1), 0.134879956838416],
    [Date.UTC(2004, 4 - 1, 2), 0.471580293538753],
    [Date.UTC(2004, 4 - 1, 3), 0.473578515121543],
    [Date.UTC(2004, 4 - 1, 4), 0.474577625912938],
];
<小时/>

如果您无法修复生成的代码,您可以在评估之前放入自定义 Date.UTC 函数,然后撤消此操作。

(function () {
    var utc = Date.UTC, slice = Array.prototype.slice;
    Date.UTC = function () { // method to take `1` based months
        var args = slice.apply(arguments);
        if (args.length > 2) // fix your months
            args[1] -= 1;
        return utc.apply(Date, args);
    };
    Date.UTC.restore = function () { // method to undo changes
        Date.UTC = utc;
    };
}());
// eval your array
// ...
// restore original behaviour
Date.UTC.restore();

关于javascript - 如何使用 jQuery 从 Date.UTC 数组中的每个月减去一个月,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22915275/

相关文章:

javascript - Javascript 问题 - JQuery 和选择器

javascript - OOP Jquery 由于闭包而丢失值

javascript - 动画菜单按每个元素停止并延迟

javascript - 通过ajax函数将字符串传递到它得到回显的页面,PHP,AJAX,JAVASCRIPT

javascript - 带有 highcharts 的配对数据的分割条形图

jquery - 动态更新 Highcharts 上的仪表

javascript - x 轴上的绘图带无法按时工作

javascript - 获取google面积图的H-Axis(X-Axis)值

javascript - 如何在 Javascript 中连接字符串数组

javascript - 为什么打开页面时不显示 Google map