本頁の目次 目次 次頁: Colophon 前頁: A_Grammar_Summary
過去の版の ECMAScript は、 8 進数リテラルと 8 進数エスケープシーケンスを規定する追加の構文と意味論を含んでいた。それらはこの版の ECMAScript からは取り除かれている。この非公式の補遺は、古い ECMAScript プログラムとの互換性のための 8 進数リテラルと 8 進数エスケープシーケンスの統一構文及び意味論を提示する。
セクション 7.8.3 の構文及び意味論を次のように拡張できる:
セクション 7.8.4 の構文及び意味論を次のように拡張できる:
ECMAScript 実装には標準ネイティブオブジェクトにいくつかの追加プロパティを持つものがある。この非公式の補遺は、そのようなプロパティのために本標準にプロパティまたその意味論作成はせずに、統一形式の意味論を示唆する。
escape 関数はグローバルオブジェクトのプロパティである。これは、ある文字を16進数のエスケープシーケンスに置換した新たな文字列を算出する。
置き換えられる文字のコードポイント値が 0xFF 以下である場合、 %xx 形式の 2 桁のエスケープシーケンスが用いられる。置き換えられる文字のコードポイント値が 0xFF を超える場合、 %uxxxx 形式の 4 桁のエスケープシーケンスが用いられる。
escape 関数が 1 個の引数 string で呼び出されるとき、次のステップが取られる:
NOTE 符号化は部分的に RFC1738 に記述される符号化に基づいているが、本標準で規定する完全な符号化は RFC1738 の内容を考慮せず上述される。
unescape 関数はグローバルオブジェクトのプロパティである。これは escape 関数が生成しうる並びの各エスケープシーケンスがその表す文字で置き換えられた新しい文字列値を算出する。
unescape 関数が 1 個の引数 string で呼び出されるとき、次のステップが取られる:
substr
メソッドは 2 個の引数、 start と length をとり、このオブジェクトを文字列に変換し、文字位置 start で開始して length 個の文字 (length が undefined なら文字列の末尾) まで続く部分文字列を返す。 start が負ならば、文字列の長さを sourceLength として、それを (sourceLength+start) として扱う。結果は文字列値であり、 String オブジェクトにはならない。次のステップが取られる:
this
値を与える。substr
メソッドの length プロパティは 2 である。
NOTE substr
関数は故意に汎用的である; this
値が String オブジェクトであることを要求しない。それゆえ、他の種類のオブジェクトにメソッドとして転用されうる。
NOTE "2000 年問題" を回避するため、ほぼ全ての目的で getFullYear メソッドが好まれる。
getYear
メソッドが引数無しで呼出される時、次のステップが取られる:
NOTE "2000 年問題" を回避するため、ほぼ全ての目的で setFullYear メソッドが好まれる。
setYear
メソッドが 1 個の引数 year で呼出される時、次のステップが取られる:
this
値の [[Value]] プロパティを TimeClip(Result(6)) に設定する。this
値の [[Value]] プロパティの値を返す。NOTE プロパティ toUTCString が望ましい。 toGMTString
プロパティは主に古いコードとの互換性のために提供される。新たな ECMAScript コード内では toUTCString プロパティが用いられることを推奨する。
Date.prototype.toGMTString
の初期値である Function オブジェクトは、 Date.prototype.toUTCString の初期値である Function オブジェクトと同じである。