【问题标题】:How to return the correct day of the week given a date - year month and day如何在给定日期的情况下返回正确的星期几 - 年月日
【发布时间】:2015-10-14 22:03:06
【问题描述】:

只是为了简化我的问题,我有以下代码

var date = new Date( 2015 , 10 , 16 );

//print the day of the week on console
console.log( date.getDay() ); //prints 1

据我了解,它应该打印 5,因为它是星期五而不是星期一,但它不是,可能是什么问题,或者我不理解日期对象?

谢谢。

【问题讨论】:

标签: javascript date


【解决方案1】:

您的问题是Date 构造函数的月份部分是基于0 的。 (见doc

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

如果您要在 JavaScript 控制台中构造日期,您可以看到这一点:

new Date( 2015 , 10 , 16 )
> Mon Nov 16 2015 00:00:00 GMT-0500 (EST)

【讨论】:

  • getDay() 还会根据美国日历返回 0 到 6 的值(星期日是第一天)。链接here
  • 更明确地说,这意味着您看到的不是 10 月 16 日而是 11 月 16 日(实际上是星期一)
  • @kikyalex,好点,虽然 OP 确实提到它应该在星期五打印 5,这是正确的。但是是的,星期天应该是0,而不是7
  • 哦,我现在明白了,谢谢你们 :) 哈哈,我不知道在阅读文档时我怎么会错过这个
猜你喜欢
  • 2022-11-09
  • 2018-03-11
  • 1970-01-01
  • 2022-01-21
  • 2018-07-14
  • 2021-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多