我想把一个日期解析成一个javascript日期对象。我使用下面的
new Date(Date.parse('2012-08-01'))
问题是我的输入日期可以有多种格式解析它应该总是给我date对象,日期为
2012-08-01就是
在本地时区。
在不使用任何第三方库的情况下,javascript中有哪些可能的选项?
我有一个可能的解决方案。但我担心的是,我是否应该担心这将不能在某些android/iphone/kindle/surface原生浏览器工作?
var timezone = new Date().toString().match(/([A-Z]+[+-][0-9]+)/)[1];
var dateObject = new Date(Date.parse('2012-08-01 '+timezone));
将连字符替换为正斜杠,它将使用本地时间。如果你想让它在任何地方工作,一定要使用yyyy/mm/dd
排序。
您也不需要显式调用Date.parse
。当你传递一个字符串时,Date
构造函数会这样做。
new Date('2012/08/01') // local
new Date('2012-08-01') // UTC