Date.parse不起作用

这个问题在这里已经有了答案:

  • 为什么Date.parse会提供不正确的结果? 10个答案

  • JavaScript日期不包含时区。 您解析的日期被解释为2016年12月15日UTC的午夜。

    当您将其转换回字符串时,它将使用浏览器语言环境中的时区,并且由于您似乎位于美国东海岸,因此适当的时区为EST。

    美国东部时间下午7点等于UTC的第二天午夜。


    解析不是解析日期的可靠方法...

    假定时区的差异

    给定一个“2014年3月7日”的日期字符串,parse()假设一个本地时区,但给定ISO格式(如“2014-03-07”),它将假定UTC时区(ES5和ECMAScript 2015)。 因此,使用这些字符串生成的日期对象可能代表不同的时刻,具体取决于支持的ECMAScript版本,除非系统设置为UTC本地时区。 这意味着两个显示等同的日期字符串可能会导致两个不同的值,具体取决于正在转换的字符串的格式。

    - 资源 -

    我认为你应该得到客户的日期和时区,并使用像Moment.js这样的库来正确解析日期。


    您可以使用.Date.UTC()方法从特定的UTC时间创建一个日期对象,但必须分别传递这些值:

    new Date(Date.UTC(year, month, day, hour, minute, second));

    更好更安全的方法是使用moment.js

    链接地址: http://www.djcxy.com/p/18627.html

    上一篇: Date.parse not working

    下一篇: how to fix Javascript Invalid Date Error in FF and IE