【问题标题】:Find current time in ET: EST or EDT, as appropriate在 ET 中查找当前时间:EST 或 EDT,视情况而定
【发布时间】:2011-11-12 07:59:36
【问题描述】:

我有一个应用程序需要在计算的某个部分使用东部时间而不是本地时间。我想这一切都可以手动完成(提取 UTC 时间,通过表查找确定夏令时是否有效,然后酌情移动 4 或 5 小时),但我想知道是否有内置的方法来做这件事。

另外,最近美国的夏令时不是有变化吗? (我需要遵守美国关于夏令时的规则。)我想知道这些是否被纳入 JavaScript 版本,是否遵循旧规则,或者它是否从一开始就不知道它们。

【问题讨论】:

    标签: javascript dst


    【解决方案1】:

    可容忍的方法:

    var d, lsm, lso, off;
    d = lsm = lso = new Date;
    var off = d.getTimezoneOffset();
    lsm.setMonth(2);
    lsm.setDate(11);
    lsm.setDate(11-lsm.getDay());
    lso.setMonth(10);
    lso.setDate(4);
    lso.setDate(4-lso.getDay());
    d.setMinutes(d.getMinutes()+off-(d < lsm || d >= lso ? 300 : 240));
    // d contains the ET date
    

    【讨论】:

    • 哎呀。如果有 some 方法可以重用内置知识而不是硬编码这些日期和偏移量,那肯定会很好。 =)
    • @AseemKishore:你和我都是。
    猜你喜欢
    • 1970-01-01
    • 2019-04-25
    • 2019-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-18
    • 2014-08-23
    相关资源
    最近更新 更多