gpt4 book ai didi

javascript - date.parse( ) 根据格式提供不同的值(?)

转载 作者:行者123 更新时间:2023-11-28 01:39:00 25 4
gpt4 key购买 nike

考虑下面的简单 JavaScript 代码示例。我期望 d 和 x 具有相同的值,例如d-x = 0,但情况似乎并非如此?我是否不允许使用 var x 所使用的日期字符串格式,或者还有其他原因吗? (我无法直接在 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse 中找到这样的限制,但也没有字符串格式 yyyy-mm-dd 的示例)

var d = Date.parse("March 21, 2012"); 

alert(d); //val 1332284400000

var x = Date.parse("2012-03-21");

alert(x); //val 1332288000000

alert(d-x); //val -3600000

最佳答案

如果最近的浏览器可以将日期字符串解释为 ISO-8601 - 它将(!!!)。使用这种格式,您的日期/时间字符串将被解释为 UTC(!!!)

您应该尽可能坚持使用“YYYY/MM/DD”作为日期字符串。它得到普遍支持且明确。使用这种格式,所有时间都是本地时间。

例如:看看这个烂摊子:

new Date("2013-07-27T10:10:10")

chrome : Sat Jul 27 2013 13:10:10 GMT+0300 (Jerusalem Daylight Time)
ff: Sat Jul 27 2013 10:10:10 GMT+0300 (Jerusalem Standard Time)
ie8 : nan
ie : Sat Jul 27 10:10:10 UTC+0300 2013

同时:

new Date("2013/07/27 10:10:10")

ie: Sat Jul 27 10:10:10 UTC+0300 2013
chrome: Sat Jul 27 2013 10:10:10 GMT+0300 (Jerusalem Daylight Time)
ff: Sat Jul 27 2013 10:10:10 GMT+0300 (Jerusalem Standard Time)

关于javascript - date.parse( ) 根据格式提供不同的值(?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21158336/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com