当一串数字传递给Date对象时,了解javascript中的日期

时间:2017-04-26 15:31:31

标签: javascript

为什么在Javascript中将一串不同长度的数字传递给Date有时会返回日期对象,有时会返回无效日期。

例如:

  1. 新日期(' 123456') - > Tue Jan 01 123456 00:00:00 GMT + 0530

  2. 新日期(' 1234567') - >日期无效

  3. 新日期(' 999999') - >日期无效

1 个答案:

答案 0 :(得分:2)

使用日期构造函数的方式,字符串被解释为年份。但是,正如Xotic750已经说明的那样,Javascript中的日期相对于UTC时间1970年1月1日只能在-100,000,000天到100,000,000天的范围内。这意味着' 123456'是在范围内,但是' 1234567'和' 999999'不是。

请注意,由于浏览器之间的不一致,强烈建议不要将Date构造函数与字符串一起使用。最好自己解析日期并使用构造函数花费数年,数月等。