san*_*udr 2 javascript date date-parsing
new Date("2014 Aug 11")给出Mon Aug 11 2014 00:00:00 GMT+0100 (GMT Daylight Time)哪个是正确的,但是
new Date("2014-08-11")给Mon Aug 11 2014 01:00:00 GMT+0100 (GMT Daylight Time).
为什么这两个日期有1小时的差异?
我试图减去2个日期,如果两个日期相同,则期望结果为"0".但在我上面的例子中,它不是零!
Den*_*ret 10
它在perfeclty解释的MDN的parse功能(其解析使用的Date构造函数):
给定日期字符串"2014年3月7日",解析假定为本地时区,但是给定ISO格式(例如"2014-03-07"),它将假定UTC的时区.因此,使用这些字符串生成的Date对象将表示不同的时刻,除非系统设置了UTC的本地时区
GMT + 2的人会看到2小时的差异.
如果您无法正确解析日期,并且您对作为输入的字符串类型充满信心,则可能会强制使用时区:
var date = new Date(str+" UTC");
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           72 次  |  
        
|   最近记录:  |