<分区>
为什么 Javascript Date 接受非数字字符作为年份并将其作为 2001 返回?
如果您运行以下命令:
new Date('aaaa-05-04');
结果为 Fri May 04 2001 00:00:00 GMT+0200
。 aaaa
年份不应该导致 Invalid Date
吗?通过将年份设置为 b
、abc
或任何其他组合,您会得到相同的结果。
同时将月份设置为非数字可提供有效日期
new Date('aaaa-aa-01');
但如果日期设置为 21 则不是:
new Date('aaaa-aa-21');
奖励问题:
new Date(1950, 30, 30);
结果 Wed Jul 30 1952 00:00:00 GMT+0100
这不应该也导致 Invalid Date
吗?相反,它增加了年份。
我目前使用的是 Chrome 91。