1

在最新的 0.8 和 0.10 版本的节点中运行此代码:

> date = new Date(2013, 0, 1)
Tue Jan 01 2013 00:00:00 GMT+0200 (EET)
> date.setUTCMonth(5)
1341180000000
> date
Mon Jul 02 2012 01:00:00 GMT+0300 (EEST)

.setUTCMonth在被调用后,年份从 2013 年更改为 2012年。为什么会这样?

4

1 回答 1

4

调用 .setUTCMonth 后,年份从 2013 年更改为 2012 年。

不,它没有。

您的本地时区是GMT+0200- 这意味着您看到的日期Tue Jan 01 2013 00:00:00 GMT+0200实际上比格林威治标准时间早两个小时,所以它是 2012 年 12 月 31 日 22:00:00。

并更改该日期的月份5使您修改的日期相应地在 2012 年 7 月结束。

于 2013-03-28T15:21:16.273 回答