3

Javascript 的 Date 对象表现得很奇怪。

如果我创建一个新日期,即使从浏览器控制台也总是添加一个月。

这是一个例子:

date = new Date(2013, 06, 01)
Mon Jul 01 2013 00:00:00 GMT+0100 (BST)
date = new Date(2013, 01, 01)
Fri Feb 01 2013 00:00:00 GMT+0000 (GMT)

关于发生了什么的任何想法?

4

2 回答 2

8

根据Date()规范月份是0-11之间的整数

表示月份的整数值,从 0 开始表示一月到 11 表示十二月。

于 2013-06-11T11:55:23.717 回答
3

javascript 日期有 0 个索引月份,因此您需要在 1 月使用 0 到 12 月使用 11

date = new Date(2013, 00, 01)
Tue Jan 01 2013 00:00:00 GMT+0100 (Romance Standard Time)
于 2013-06-11T11:55:31.993 回答