toString()
メソッドは、指定した Date
オブジェクトを表す文字列を返します。
構文
dateObj.toString()
返値
与えられた日付を表す文字列。
解説
Date
のインスタンスは toString()
メソッドを Date.prototype
から継承しており、 Object.prototype
から継承しているわけではありません。 Date.prototype.toString()
は Date を表す文字列を、 ECMA-262 で指定された以下のような書式で返します。
- 曜日: 3文字の英語の曜日名。例 "Sat"
- 空白
- 月名: 3文字の英語の月名。例 "Sep"
- 空白
- 日: 2桁の日。例 "01"
- 空白
- 年: 4桁の年。例 "2018"
- 空白
- 時: 2桁の時。例 "14"
- コロン
- 分: 2桁の分。例 "53"
- コロン
- 秒: 2桁の秒。例 "26"
- 空白
- 文字列 "GMT"
- タイムゾーンのオフセット記号。以下のどちらかです。
- "+" 正のオフセット (0以上)
- "-" 負のオフセット (0未満)
- 2桁の時間のオフセット。例 "14"
- 2桁の分のオフセット。例 "00"
- 任意で、以下の形のタイムゾーン名。
- 空白
- 左括弧、すなわち "("
- タイムゾーンを表す実装依存の文字列で、省略形の場合も完全な名前の場合もあります (タイムゾーンに名前や省略形の標準はありません。例 "Line Islands Time" または "LINT"
- 右括弧、すなわち ")"
例 "Sat Sep 01 2018 14:53:26 GMT+1400 (LINT)"
ECMAScript 2018 (第9編) まで、 Date.prototype.toString
が返す文字列の書式は実装に依存していました。したがって、指定された書式通りであることに頼ってはいけません。
toString()
メソッドは、日付がテキスト値で表現されるとき、例えば console.log(new Date())
、または日付が文字列に強制変換されるとき、例えば var today = 'Today is ' + new Date()
などで自動的に呼び出されます。
toString()
は汎用メソッドです。 this
が Date
インスタンスある必要はありません。しかし、ネイティブの JavaScript を使用して構築することができない内部の [[TimeValue]]
プロパティを持っている必要があるため、事実上は Date
インスタンスでの使用に限定されています。日付でないインスタンスで呼び出された場合、 TypeError
が発生します。
例
toString() の使用
次の例は、Date
オブジェクトの toString()
値を myVar
に代入します。
var x = new Date();
var myVar = x.toString(); // 次のような値を myVar に代入します:
// Mon Sep 08 1998 14:36:22 GMT-0700 (PDT)
仕様書
ブラウザーの互換性
BCD tables only load in the browser