new Date【コンストラクタ】
Date【型変換 (現在日時文字列)】
[@@toPrimitive]【プリミティブ値取得】
文字列 ⇒ 経過ミリ秒 | |||||
---|---|---|---|---|---|
日時文字列 解析 | parse | ||||
文字列・経過ミリ秒・個別指定・現在日時 ⇒ 日時 | |||||
コンストラクタ | new Date | ||||
日時 ⇒ 文字列 | |||||
UTC | ローカル時刻 (上段) ロケール (下段) | ISO | JSON | GMT | |
日時文字列 変換 | toUTCString | toString (実装依存) | toISOString | toJSON | toGMTString |
toLocaleString (参考) Intl.DateTimeFormat | |||||
日付文字列 変換 | toDateString (実装依存) toLocaleDateString | ||||
時刻文字列 変換 | toTimeString (実装依存) toLocaleTimeString | ||||
現在日時文字列 変換 | Date ― |
new Date【コンストラクタ】
メモ
概要
- Date【日時】オブジェクトを生成
- new を省略すると、Date【型変換 (現在日時文字列)】
- 日時文字列フォーマット のタイムゾーン省略時の仕様
- 日付のみはUTC時刻、日付+時刻はローカル時刻
外部リンク
- ECMA-262 (英語)
Date ( year, month [ , date [ , hours [ , minutes [ , seconds [ , ms ] ] ] ] ] )
new Date (year, month [, date [, hours [, minutes [, seconds [, ms ] ] ] ] ] )ES2024 (15) ES2023 (14) ES2022 (13) Date (value)・new Date (value) ES2024 (15) ES2023 (14) ES2022 (13) Date ( )・new Date ( ) ES2024 (15) ES2023 (14) ES2022 (13)
構文
new Date( year, month[, date[, hours[, minutes[, seconds[, ms]]]]] )
new Date( value )
new Date()
Date オブジェクト (引数未指定:現在日時)
yearローカル時刻の年 (詳細は下記参照)
monthローカル時刻の月 (0~11:詳細は下記参照)
dateローカル時刻の日 (詳細は下記参照)
hoursローカル時刻の時 (詳細は下記参照)
minutesローカル時刻の分 (詳細は下記参照)
secondsローカル時刻の秒 (詳細は下記参照)
msローカル時刻のミリ秒 (詳細は下記参照)
value日時文字列 または 経過ミリ秒 (UTC)
日時文字列フォーマット
上記以外の日時文字列 (実装依存)
1970/01/01 00:00:00 UTC からの経過ミリ秒
year | 説明 |
---|---|
0 ≦ year ≦ 99 | 西暦1900~1999年 (+1900) |
100 ≦ year | 西暦100年~ |
year ≦ -1 | ~西暦-1年(紀元前2年) |
その他 | 補正 |
month | 説明 |
---|---|
0~11 | 1月~12月 |
その他 | 補正 |
date | 説明 |
---|---|
省略 | 1日 |
1~31 | 1日~31日 |
その他 | 補正 |
hours | 説明 |
---|---|
省略 | 0時 |
0~23 | 0時~23時 |
その他 | 補正 |
minutes | 説明 |
---|---|
省略 | 0分 |
0~59 | 0分~59分 |
その他 | 補正 |
seconds | 説明 |
---|---|
省略 | 0秒 |
0~59 | 0秒~59秒 |
その他 | 補正 |
ms | 説明 |
---|---|
省略 | 0ミリ秒 |
0~999 | 0ミリ秒~999ミリ秒 |
その他 | 補正 |
例
// 日時個別指定
let date = new Date(2001, (2 - 1));
console.log(date.toString(), date.getMilliseconds());
// 出力:Thu Feb 01 2001 00:00:00 GMT+0900 (東京 (標準時)) 0
date = new Date(2001, (2 - 1), 3);
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 00:00:00 GMT+0900 (東京 (標準時)) 0
date = new Date(2001, (2 - 1), 3, 4);
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 04:00:00 GMT+0900 (東京 (標準時)) 0
date = new Date(2001, (2 - 1), 3, 4, 5);
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 04:05:00 GMT+0900 (東京 (標準時)) 0
date = new Date(2001, (2 - 1), 3, 4, 5, 6);
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 04:05:06 GMT+0900 (東京 (標準時)) 0
date = new Date(2001, (2 - 1), 3, 4, 5, 6, 789);
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 04:05:06 GMT+0900 (東京 (標準時)) 789
date = new Date(99, (2 - 1));
console.log(date.toString(), date.getMilliseconds());
// 出力:Mon Feb 01 1999 00:00:00 GMT+0900 (東京 (標準時)) 0
date = new Date(2001, -1);
console.log(date.toString(), date.getMilliseconds());
// 出力:Fri Dec 01 2000 00:00:00 GMT+0900 (東京 (標準時)) 0
// 日時文字列指定
date = new Date("2001-02-03");
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 09:00:00 GMT+0900 (日本標準時) 0
date = new Date("2001-02-03T04:05:06");
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 04:05:06 GMT+0900 (日本標準時) 0
date = new Date("2001-02-03T04:05:06Z");
console.log(date.toString(), date.getMilliseconds());
// 出力:Sat Feb 03 2001 13:05:06 GMT+0900 (日本標準時) 0
// 経過ミリ秒指定
date = new Date(1234);
console.log(date.toString(), date.getMilliseconds());
// 出力:Thu Jan 01 1970 09:00:01 GMT+0900 (東京 (標準時)) 234
// 引数未指定:現在日時
date = new Date();
console.log(date.toString(), date.getMilliseconds());
// 出力:www MMM DD YYYY HH:mm:ss GMT+0900 (東京 (標準時)) sss
Date【型変換 (現在日時文字列)】
メモ
概要
- 現在のロケール日時文字列を取得
- (new Date()).toString() と同等
外部リンク
- ECMA-262 (英語)
The Date Constructor
Date ( [ year [, month [, date [, hours [, minutes [, seconds [, ms ] ] ] ] ] ] ] ) (ES5.1 は別関数)ES2024 (15) ES2023 (14) ES2022 (13)
構文
Date( [year[, month[, date[, hours[, minutes[, seconds[, ms]]]]]]] )
現在のロケール日時文字列
引数全ての引数は、無視
例
var date = Date();
console.log(date); // 出力:www MMM SS YYYY HH:mm:ss GMT+0900 (東京 (標準時)) 【現在日時】
date = Date(2001);
console.log(date); // 出力:www MMM SS YYYY HH:mm:ss GMT+0900 (東京 (標準時)) 【現在日時】
Date.prototype[@@toPrimitive]【プリミティブ値取得】
メモ
概要
- プリミティブ値を取得
- プリミティブ値は、文字列 または 数値
外部リンク
- ECMA-262 (英語)
Date.prototype [ @@toPrimitive ] ( hint ) ES2024 (15) ES2023 (14) ES2022 (13)
構文
date[Symbol.toPrimitive]( hint )
valueOf()【ミリ秒数取得】 または toString()【文字列変換】 の戻り値
hintヒント (詳細は下記参照)
TypeError (hint が "default"・"string"・"number" 以外)
hint | 説明 |
---|---|
"default" "string" | toString【文字列変換】 ・valueOf【ミリ秒数取得】の順に有効なメソッド呼び出し |
"number" | valueOf【ミリ秒数取得】 ・toString【文字列変換】の順に有効なメソッド呼び出し |
例
var date = new Date(2001, (2 - 1), 3, 4, 5, 6, 789);
console.log(date[Symbol.toPrimitive]("string")); // 出力:Sat Feb 03 2001 04:05:06 GMT+0900 (東京 (標準時))
console.log(date[Symbol.toPrimitive]("default")); // 出力:Sat Feb 03 2001 04:05:06 GMT+0900 (東京 (標準時))
console.log(date[Symbol.toPrimitive]("number")); // 出力:981140706789
console.log(date[Symbol.toPrimitive]("ng")); // TypeError 例外