为什么
Date.parse('2017-06-18'); //1497744000000
Date.parse('2017-6-18'); //1497715200000
返回的毫秒数是不一样的?
为什么
Date.parse('2017-06-18'); //1497744000000
Date.parse('2017-6-18'); //1497715200000
返回的毫秒数是不一样的?
JavaScript的规范保证了new Date("2017-06-18")的行为。new Date("2017-6-18")不符合规格格式,浏览器可以做任何事情(包括在不同的时区解释);
Chrome对待这些格式的解析产生差异 - firefox不会这样 - 所以建议使用规范中的日期格式,不要依赖浏览器处理任何“非标准”格式
请按照规范写代码!
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
new Date
和Date.parse
使用的是同样的解析规律,只是一个返回Date object
另一个返回毫秒数,我们使用new Date
来说明问题:刚好差8个小时,所以返回的毫秒数就不一样咯。