[英]Get day works wrong in case new Date(year, month, day)
我正在尝试通过以下方式获取星期几:
const date = new Date('2021/12/06')
date.getDay()
它工作正常,但是当我使用new Date(2021, 12, 6)
创建日期时,它显示错误的数字 - 4
。 为什么会发生这种情况,或者我不明白这种创建日期 object 的方式有什么例外?
这是因为月份应该是月份索引 (0 - 11) 而不是月份顺序 (1-12):
new Date(2021, 11, 6).getDay()
并不是
new Date(2021, 12, 6).getDay()
REF: Date() 构造函数:语法
当您通过 3 个参数创建日期时,您必须使用月份索引。 从 0 开始。
所以 12 月实际上是 11 日,而不是 12 日。
如果你使用new Date(2021, 11, 6)
你会得到你正在寻找的结果。
getDay() 获取一周的索引。 星期日、星期一、星期二等 (0, 1, 2,3,...)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getDay
我相信您正在寻找的是 getDate() https://www.w3schools.com/js/js_date_methods.asp
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.