【Node.js24.x】Date::setYear()メソッドの使い方
setYearメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
setYearメソッドは、Dateオブジェクトの年を設定するメソッドです。このメソッドは、引数として数値を一つ受け取り、その数値を基にDateオブジェクトの年を変更します。
setYearメソッドの引数の解釈には特殊な挙動があります。引数に0から99までの数値を与えた場合、その数値は1900年代の年として解釈されます。例えば、date.setYear(7)と呼び出すと、日付オブジェクトの年は1907年として設定され、date.setYear(99)と呼び出すと1999年として設定されます。一方、100以上の数値を引数に与えた場合は、その数値がそのまま年として設定されます。例えば、date.setYear(2007)と呼び出すと、2007年として設定されます。
このメソッドは、日付オブジェクトの年が変更された後の、UTC(協定世界時)1970年1月1日0時0分0秒からの経過ミリ秒数を示す数値を返します。
しかし、このsetYearメソッドは、2桁の年を1900年代として強制的に解釈するという挙動のため、西暦2000年問題以降の現代のアプリケーション開発においては意図しない結果を招く可能性があり、ECMAScriptの仕様で非推奨(deprecated)とされています。新しいコードを記述する際には、年を4桁の西暦で直接指定できるsetFullYearメソッドを使用することが強く推奨されます。setFullYearメソッドは、与えられた数値をそのまま年として解釈し、より直感的で安全に日付の年を設定することが可能です。
構文(syntax)
1const dateObject = new Date(); 2dateObject.setYear(2025);
引数(parameters)
yearValue
- yearValue: number: 設定する年を表す数値 (例: 2023)
戻り値(return)
Number
Dateオブジェクトの年を設定し、その時刻を表すミリ秒単位の数値を返します。