Javascript ECMAScript 5.1规范不正确?日期构造函数日期/时间格式解析为UTC
根据维基百科的文章(我知道,坏消息来源) 如果未提供带有时间表示的UTC关系信息,则假定时间为本地时间 比如说。。鉴于:Javascript ECMAScript 5.1规范不正确?日期构造函数日期/时间格式解析为UTC,javascript,date,datetime,ecmascript-5,iso8601,Javascript,Date,Datetime,Ecmascript 5,Iso8601,根据维基百科的文章(我知道,坏消息来源) 如果未提供带有时间表示的UTC关系信息,则假定时间为本地时间 比如说。。鉴于: var a=日期解析(“2012-03-21”) var b=日期解析(“2012-03-21T00:00”) var c=日期解析(“2012-03-21T00:00Z”) 我希望“a”和“b”是当地时间(浏览器的时区),而“c”是UTC。但是,a、b和c都是等效的(13322800000)。所有值都解析为UTC ECMAScript规范也明确说明了这一点: 15.9.
- var a=日期解析(“2012-03-21”)李>
- var b=日期解析(“2012-03-21T00:00”)李>
- var c=日期解析(“2012-03-21T00:00Z”)李>
toLocaleString
方法执行此操作:
var foo = new Date("2012-03-21").toLocaleString()
var bar = new Date("2012-03-21T00:00").toLocaleString()
var baz = new Date("2012-03-21T00:00Z").toLocaleString()
参考资料
ECMAScript 6草案现在说“如果没有时区偏移,日期时间将被解释为本地时间。”那么,也许浏览器的时区实际上是UTC?奇怪的评论。不,这是EST。这条评论有什么奇怪的,如果你在英国,你的localtime和utc会产生相同的结果。。。