新手问题。我有一个以下格式的字符串:
var dateStr = '2012-4-14';
我想把它变成一个JavaScript Date对象。以下内容在Chrome中创建了一个Date对象,但在IE8中是NaN:
var myDate = new Date(dateStr);
我应该采取哪些不同的做法 - 我应该拆分字符串吗?
谢谢!
答案 0 :(得分:3)
尝试将日期字符串拆分为年,月,日,并以不同方式实例化日期。
var rawDate = '2012-4-14'.split('-');
var myDate = new Date(rawDate[0], rawDate[1]-1, rawDate[2]);
请注意,这只有在您可以保证每次日期字符串格式相同时才有效。
答案 1 :(得分:2)
javascript中有一个Date.parse,它识别各种日期格式,详见MDN页面。对于ISO 8601日期(您的日期似乎是这个),您可以使用this library。
这个答案也可以证明自己很有用:Why does Date.parse give incorrect results?
答案 2 :(得分:0)
将var dateStr = '2012-4-14';
更改为var dateStr = '2012/4/14';