簡體   English   中英

如果新日期(年、月、日),則獲取日期工作錯誤

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM