什么是JavaScript日期范围

Min*_*iel 2 javascript jquery date range

Date()对象中的JavaScript年份范围是多少

我知道MS SQL年份日期范围是datetime数据类型是从1753-01-01到9999-12-31

即使在JavaScript月份范围是0-11,任何其他东西将是无效的日期

我正在测试这个,这里有一些结果:

new Date(99999,1,1) ; //is valid 
Run Code Online (Sandbox Code Playgroud)

new Date(1000000,1,1); // invalid 
Run Code Online (Sandbox Code Playgroud)

这意味着有一年的范围,任何人都知道它是什么以及为什么这个确切的范围?

Rah*_*thi 12

来自文档:

自UTC时间1970年1月1日起,时间以ECMAScript为单位,以毫秒为单位.在时间值中,忽略闰秒.假设每天恰好有86,400,000毫秒.ECMAScript数值可以表示从-9,007,199,254,740,992到9,007,199,254,740,992的所有整数; 此范围足以测量从UTC时间1970年1月1日起向前或向后约285,616年内的任何瞬间的毫秒精度.

ECMAScript日期对象支持的实际时间范围略小:相对于UTC时间1970年1月1日午夜测量的时间恰好为-100,000,000天到100,000,000天.这给UTC时间1970年1月1日的任何一方提供了8,640,000,000,000,000毫秒的范围

所以,如果我这样说:

var d = new Date();
d.setTime(8640000000000000);
document.write(d);
Run Code Online (Sandbox Code Playgroud)

然后输出为:

周五9月12日275760 20:00:00 GMT-0400(东部夏令时间)

d.setTime(8640000000000001);

不管用