new Date()【コンストラクタ】
Date()【型変換 (現在日時文字列)】
[@@toPrimitive]()【プリミティブ値取得】


文字列 (日時文字列フォーマット) 日時 (その他変換)
文字列 経過ミリ秒
日時文字列 解析 parse
文字列・経過ミリ秒・個別指定・現在日時 日時
コンストラクタ new Date
日時 文字列
UTCローカル時刻 (上段)
ロケール (下段)
ISOJSONGMT
日時文字列 変換 toUTCString toString (実装依存) toISOString toJSON toGMTString
toLocaleString
(参考)
Intl.DateTimeFormat
日付文字列 変換toDateString (実装依存)
toLocaleDateString
時刻文字列 変換toTimeString (実装依存)
toLocaleTimeString
現在日時文字列 変換Date


new Date()【コンストラクタ】

メモ

構文

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~111月~12月
その他補正
date説明
省略1日
1~311日~31日
その他補正
hours説明
省略0時
0~230時~23時
その他補正
minutes説明
省略0分
0~590分~59分
その他補正
seconds説明
省略0秒
0~590秒~59秒
その他補正
ms説明
省略0ミリ秒
0~9990ミリ秒~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()【型変換 (現在日時文字列)】

メモ

構文

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]()【プリミティブ値取得】

メモ

構文

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 例外