訳の正確性を保証するものではありませんので必要に応じて原文であるEcma InternationalのECMA-262にある ECMA-262.pdf ( ECMA-262 5.1 Edition )を参照下さい。
訳:2012年04月 webzoit.net
Dateコンストラクタの内部プロパティの値は、Functionプロトタイプオブジェクト(15.3.4)です。 また、内部プロパティと(値が7である)lengthプロパティ、Dateコンストラクタは、次のプロパティも持ちます。
Date.prototype の初期値は、組み込みDateプロトタイプオブジェクト(15.9.5)です。 このプロパティは、属性 { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false } を持ちます。
parse 関数は、その引数にToString演算子を適用し、日付と時刻としての結果となる文字列を解釈し、その日付と時刻と一致するUTC時間の値である数字を返します。 文字列は、文字列の内容によってローカル時間としてや他のタイムゾーン(時間帯)における時間として解釈される場合もあります。 その関数は最初にDate内で呼んだ規則によって文字列の書式の解析を試行します。 時間文字列の書式 (15.9.1.15)。 文字列は、その書式に準拠しない場合、その関数は、実装仕様のヒューリスティクス(経験則)や実装仕様の日付の書式にフォールバック(縮退)する場合があります。 書式文字列内で不正な要素の値を含む認識不能な文字列や日付は、 Date.parse によってNaNを返しましょう。 x が、ミリ秒単位の量が、ECMAScriptの特定の実装内でゼロであるDateオブジェクトの場合、参照したすべてのプロパティが、それらの初期値を持つ場合、次の式の全てにおいては、当該実装内で同じ数値の値を生成すべきです。
x.valueOf() Date.parse(x.toString()) Date.parse(x.toUTCString()) Date.parse(x.toISOString())
しかしながら、式
Date.parse(x.toLocaleString())
は、先行する3つの式と同一のNumber値を要求されることはなく、一般には、与えられた文字列値が、日付時刻文字列の書式(15.9.1.15)に準拠しない場合や toString や toUTCString メソッドによってその実装内で生成されることができなかった場合、Date.parse によって生成する値については、実装依存となります。
UTC 関数が、2つ未満(0または1つ)の引数を伴って呼ばれる場合、その動作は、実装依存です。 UTC 関数が、2つから7つまでの引数を伴って呼ばれる場合、 year、month、(オプションとして) date、hours、minutes、seconds、ms から日付を算出します。 (UTC 関数は、)次のステップが取られます。
1. y は、 ToNumber(year) とする 2. m は、 ToNumber(month) とする 3. date が、提供される場合、 dt は、 ToNumber(date) とし、それ以外の場合、dt は、1とする 4. hours が、提供される場合、 h は、 ToNumber(hours) とし、それ以外の場合、h は、0とする 5. minutes が、提供される場合、 min は、 ToNumber(minutes) とし、それ以外の場合、min は、0とする 6. seconds が、提供される場合、 s は、 ToNumber(seconds) とし、それ以外の場合、s は、0とする 7. ms が、提供される場合、 milli は、 ToNumber(ms) とし、それ以外の場合、milli は、0とする 8. y が、 NaN ではなく、且つ、 0 ≦ ToInteger(y) ≦ 99 である場合、 yr は、 1900+ToInteger(y) とし、それ以外の場合、 yr は、 yとする 9. TimeClip(MakeDate(MakeDay(yr, m, dt), MakeTime(h, min, s, milli))) を返す
UTC 関数の length プロパティは、7です。 [注釈] UTC 関数は、Dateオブジェクトを生成するのではなく、Numberとして時間の値を返し、ローカル時間としてではなくUTC内で引数を解釈するといったように2つの手法においてDateコンストラクタとは異なっています。
now 関数は、指定した UTC 日付の時間の値と now 呼び出しの発生時刻であるNumber値を返します。