Date.prototype.setYear()
已棄用:此特性不再推薦。雖然某些瀏覽器可能仍然支援它,但它可能已經從相關的網路標準中刪除,可能正在刪除過程中,或者可能僅為相容性目的而保留。請避免使用它,如果可能,請更新現有程式碼;請參閱本頁底部的相容性表格以指導您的決策。請注意,此特性可能隨時停止工作。
setYear() 方法用於根據本地時間為指定的 Date 例項設定年份。
然而,舊的 setYear() 方法設定年份值的方式與推薦的 setFullYear() 方法不同,在某些情況下也與 new Date() 和 Date.parse() 設定年份值的方式不同。具體來說,對於兩位數,例如 22 和 61:
-
setYear()將任何兩位數解釋為1900的偏移量;因此date.setYear(22)會將年份值設定為1922,而date.setYear(61)會將年份值設定為1961。(相比之下,雖然new Date(61, 1)也會將年份值設定為1961,但new Date("2/1/22")會將年份值設定為2022;Date.parse()類似。) -
setFullYear()不會進行特殊解釋,而是將兩位數的字面值按原樣設定為年份;因此date.setFullYear(61)會將年份值設定為0061,而date.setFullYear(22)會將年份值設定為0022。
由於這些行為差異,您應該不再使用舊的 setYear() 方法,而應該使用推薦的 setFullYear() 方法。
語法
setYear(yearValue)
引數
yearValue-
一個整數。
返回值
該方法會就地修改 Date 物件,並返回其新的 時間戳。如果 yearValue 是 NaN(或被 強制轉換為 NaN 的值,例如 undefined),則日期將被設定為 Invalid Date,並返回 NaN。
描述
如果 yearValue 是一個介於 0 到 99(含)之間的數字,則 dateObj 的年份將被設定為 1900 + yearValue。否則,dateObj 的年份將被設定為 yearValue。
示例
使用 setYear()
前兩行將年份設定為 1996。第三行將年份設定為 2000。
const theBigDay = new Date();
theBigDay.setYear(96);
theBigDay.setYear(1996);
theBigDay.setYear(2000);
規範
| 規範 |
|---|
| ECMAScript® 2026 語言規範 # sec-date.prototype.setyear |
瀏覽器相容性
載入中…