ECMA-262 3rd edition: 総目次

小史
1 適用範囲
2 適合について
3 参考文献
4 概要
4.1 Web スクリプティング
4.2 言語の概要
4.2.1 オブジェクト
4.3 定義
4.3.1 型
4.3.2 プリミティブ値
4.3.3 オブジェクト
4.3.4 コンストラクタ
4.3.5 プロトタイプ
4.3.6 ネイティブオブジェクト
4.3.7 組み込みオブジェクト
4.3.8 ホストオブジェクト
4.3.9 undefined 値
4.3.10 Undefined 型
4.3.11 null 値
4.3.12 Null 型
4.3.13 真偽値
4.3.14 Boolean 型
4.3.15 Boolean オブジェクト
4.3.16 文字列値
4.3.17 String 型
4.3.18 String オブジェクト
4.3.19 数値
4.3.20 Number 型
4.3.21 Number オブジェクト
4.3.22 Infinity
4.3.23 NaN
5 記述法について
5.1 構文と字句の文法
5.1.1 文脈自由文法
5.1.2 字句と正規表現の文法
5.1.3 数値文字の文法
5.1.4 構文的文法
5.1.5 文法記法
5.2 アルゴリズム記述について
6 ソーステキスト
7 字句について
7.1 Unicode 制御文字
7.2 空白
7.3 行終端子
7.4 コメント
7.5 トークン
7.5.1 予約語
7.5.2 キーワード
7.5.3 将来の予約語
7.6 識別子
7.7 区切り子
7.8 リテラル
7.8.1 Null リテラル
7.8.2 Boolean リテラル
7.8.3 数値リテラル
7.8.4 文字列リテラル
7.8.5 正規表現リテラル
7.9 自動セミコロン挿入
7.9.1 自動セミコロン挿入規則
7.9.2 自動セミコロン挿入例
8 型
8.1 Undefined 型
8.2 Null 型
8.3 Boolean 型
8.4 String 型
8.5 Number 型
8.6 Object 型
8.6.1 プロパティ属性
8.6.2 内部プロパティとメソッド
8.6.2.1 [[Get]] (P)
8.6.2.2 [[Put]]
8.6.2.3 [[CanPut]] (P)
8.6.2.4 [[HasProperty]] (P)
8.6.2.5 [[Delete]] (P)
8.6.2.6 [[DefaultValue]] (hint)
8.7 Reference 型
8.7.1 GetValue (V)
8.7.2 PutValue
8.8 List 型
8.9 Completion 型
9 型変換
9.1 ToPrimitive
9.2 ToBoolean
9.3 ToNumber
9.3.1 String 型に適用される ToNumber
9.4 ToInteger
9.5 ToInt32:
9.6 ToUint32:
9.7 ToUint16:
9.8 ToString
9.8.1 Number 型に適用される ToString
9.9 ToObject
10 実行コンテキスト
10.1 定義
10.1.1 Function オブジェクト
10.1.2 実行可能コードの種類
10.1.3 変数の具体化
10.1.4 スコープ連鎖と識別子の解決
10.1.5 Global オブジェクト
10.1.6 Activation オブジェクト
10.1.7 This
10.1.8 Arguments オブジェクト
10.2 実行コンテキストへの進入
10.2.1 グローバルコード
10.2.2 Eval コード
10.2.3 関数コード
11 式
11.1 基本式
11.1.1 this キーワード (this Keyword)
11.1.2 識別子参照
11.1.3 リテラル参照
11.1.4 Array 初期化子
11.1.5 オブジェクト初期化子
11.1.6 グループ化演算子
11.2 左辺式
11.2.1 プロパティアクセス演算子
11.2.2 new 演算子
11.2.3 関数呼出し
11.2.4 引数リスト
11.2.5 関数式
11.3 後置式
11.3.1 後置増分演算子
11.3.2 後置減分演算子
11.4 単項演算子
11.4.1 delete 演算子
11.4.2 void 演算子
11.4.3 typeof 演算子
11.4.4 前置増分演算子
11.4.5 前置減分演算子
11.4.6 単項 + 演算子
11.4.7 単項 - 演算子
11.4.8 ビット否定演算子
11.4.9 論理否定演算子
11.5 剰除演算子
11.5.1 * 演算子の適用
11.5.2 / 演算子の適用
11.5.3 % 演算子の適用
11.6 加減演算子
11.6.1 加法演算子
11.6.2 減法演算子
11.6.3 加減演算子の数への適用
11.7 ビット幅シフト演算子
11.7.1 左シフト演算子
11.7.2 符号付き右シフト演算子
11.7.3 符号なし右シフト演算子
11.8 関係演算子
11.8.1 Less-than 演算子
11.8.2 Grater-than 演算子
11.8.3 Less-than-or-equal 演算子
11.8.4 Greater-than-or-equal 演算子
11.8.5 抽象的関係比較アルゴリズム
11.8.6 instanceof 演算子
11.8.7 in 演算子
11.9 等価演算子
11.9.1 等価演算子
11.9.2 不等価演算子
11.9.3 抽象的等価比較アルゴリズム
11.9.4 厳密等価演算子
11.9.5 厳密不等価演算子
11.9.6 厳密等価比較アルゴリズム
11.10 バイナリビット演算子
11.11 バイナリ論理演算子
11.12 条件演算子
11.13 代入演算子
11.13.1 単純代入
11.13.2 複合代入
11.14 カンマ演算子
12 文
12.1 ブロック
12.2 変数文
12.3 空文
12.4 式文
12.5 if 文
12.6 繰返し文
12.6.1 do-while 文
12.6.2 while 文
12.6.3 for 文
12.6.4 for-in 文
12.7 continue 文
12.8 break 文
12.9 return 文
12.10 with 文
12.11 switch 文
12.12 ラベル付き文
12.13 throw 文
12.14 try 文
13 関数定義
13.1 定義
13.1.1 等しい文法の生成規則
13.1.2 結合オブジェクト
13.2 Function オブジェクトの生成
13.2.1 [[Call]]
13.2.2 [[Construct]]
14 プログラム
15 ネイティブ ECMAScript オブジェクト
15.1 Global オブジェクト
15.1.1 Global オブジェクトの値プロパティ
15.1.1.1 NaN
15.1.1.2 Infinity
15.1.1.3 undefined
15.1.2 Global オブジェクトの関数プロパティ
15.1.2.1 eval (x)
15.1.2.2 parseInt (string , radix)
15.1.2.3 parseFloat (string)
15.1.2.4 isNaN (number)
15.1.2.5 isFinite (number)
15.1.3 URI 処理関数のプロパティ
15.1.3.1 decodeURI (encodedURI)
15.1.3.2 decodeURIComponent (encodedURIComponent)
15.1.3.3 encodeURI (uri)
15.1.3.4 encodeURIComponent (uriComponent)
15.1.4 Global オブジェクトのコンストラクタプロパティ
15.1.4.1 Object ( . . . )
15.1.4.2 Function ( . . . )
15.1.4.3 Array ( . . . )
15.1.4.4 String ( . . . )
15.1.4.5 Boolean ( . . . )
15.1.4.6 Number ( . . . )
15.1.4.7 Date ( . . . )
15.1.4.8 RegExp ( . . . )
15.1.4.9 Error ( . . . )
15.1.4.10 EvalError ( . . . )
15.1.4.11 RangeError ( . . . )
15.1.4.12 ReferenceError ( . . . )
15.1.4.13 SyntaxError ( . . . )
15.1.4.14 TypeError ( . . . )
15.1.4.15 URIError ( . . . )
15.1.5 Global オブジェクトのその他のプロパティ
15.1.5.1 Math
15.2 Object オブジェクト
15.2.1 関数として呼出される Object コンストラクタ
15.2.1.1 Object ( [ value ] )
15.2.2 Object コンストラクタ
15.2.2.1 new Object ( [ value ] )
15.2.3 Object コンストラクタのプロパティ
15.2.3.1 Object.prototype
15.2.4 Object プロトタイプオブジェクトのプロパティ
15.2.4.1 Object.prototype.constructor
15.2.4.2 Object.prototype.toString ( )
15.2.4.3 Object.prototype.toLocaleString ( )
15.2.4.4 Object.prototype.valueOf ( )
15.2.4.5 Object.prototype.hasOwnProperty (V)
15.2.4.6 Object.prototype.isPrototypeOf (V)
15.2.4.7 Object.prototype.propertyIsEnumerable (V)
15.2.5 Object インスタンスのプロパティ
15.3 Function オブジェクト
15.3.1 関数として呼出される Function コンストラクタ
15.3.1.1 Function (p1, p2, … , pn, body)
15.3.2 Function コンストラクタ
15.3.2.1 new Function (p1, p2, … , pn, body)
15.3.3 Function コンストラクタのプロパティ
15.3.3.1 Function.prototype
15.3.4 Function プロトタイプオブジェクトのプロパティ
15.3.4.1 Function.prototype.constructor
15.3.4.2 Function.prototype.toString ( )
15.3.4.3 Function.prototype.apply (thisArg, argArray)
15.3.4.4 Function.prototype.call (thisArg [ , arg1 [ , arg2, … ] ] )
15.3.5 Function インスタンスのプロパティ
15.3.5.1 length
15.3.5.2 prototype
15.3.5.3 [[HasInstance]] (V)
15.4 Array オブジェクト
15.4.1 関数として呼出される Array コンストラクタ
15.4.1.1 Array ( [ item1 [ , item2 [ , ... ] ] ] )
15.4.2 Array コンストラクタ
15.4.2.1 new Array ( [ item0 [ , item1 [ , ... ] ] ] )
15.4.2.2 new Array (len)
15.4.3 Array コンストラクタのプロパティ
15.4.3.1 Array.prototype
15.4.4 Array プロトタイプオブジェクトのプロパティ
15.4.4.1 Array.prototype.constructor
15.4.4.2 Array.prototype.toString ( )
15.4.4.3 Array.prototype.toLocaleString ( )
15.4.4.4 Array.prototype.concat ( [ item1 [ , item2 [ , ... ] ] ] )
15.4.4.5 Array.prototype.join (separator)
15.4.4.6 Array.prototype.pop ( )
15.4.4.7 Array.prototype.push ( [ item1 [ , item2 [ , ... ] ] ] )
15.4.4.8 Array.prototype.reverse ( )
15.4.4.9 Array.prototype.shift ( )
15.4.4.10 Array.prototype.slice (start, end)
15.4.4.11 Array.prototype.sort (comparefn)
15.4.4.12 Array.prototype.splice (start, deleteCount [ , item1 [ , item2 [ , ... ] ] ] )
15.4.4.13 Array.prototype.unshift ( [ item1 [ , item2 [ , ... ] ] ] )
15.4.5 Array インスタンスのプロパティ
15.4.5.1 [[Put]]
15.4.5.2 length
15.5 String オブジェクト
15.5.1 関数として呼出される String コンストラクタ
15.5.1.1 String ( [ value ] )
15.5.2 String コンストラクタ
15.5.2.1 new String ( [ value ] )
15.5.3 String コンストラクタ のプロパティ
15.5.3.1 String.prototype
15.5.3.2 String.fromCharCode ( [ char0 [ , char1 [ , ... ] ] ] )
15.5.4 String プロトタイプオブジェクトのプロパティ
15.5.4.1 String.prototype.constructor
15.5.4.2 String.prototype.toString ( )
15.5.4.3 String.prototype.valueOf ( )
15.5.4.4 String.prototype.charAt (pos)
15.5.4.5 String.prototype.charCodeAt (pos)
15.5.4.6 String.prototype.concat ( [ string1 [ , string2 [ , ... ] ] ] )
15.5.4.7 String.prototype.indexOf (searchString, position)
15.5.4.8 String.prototype.lastIndexOf (searchString, position)
15.5.4.9 String.prototype.localeCompare (that)
15.5.4.10 String.prototype.match (regexp)
15.5.4.11 String.prototype.replace (searchValue, replaceValue)
15.5.4.12 String.prototype.search (regexp)
15.5.4.13 String.prototype.slice (start, end)
15.5.4.14 String.prototype.split (separator, limit)
15.5.4.15 String.prototype.substring (start, end)
15.5.4.16 String.prototype.toLowerCase ( )
15.5.4.17 String.prototype.toLocaleLowerCase ( )
15.5.4.18 String.prototype.toUpperCase ( )
15.5.4.19 String.prototype.toLocaleUpperCase ( )
15.5.5 String インスタンスのプロパティ
15.5.5.1 length
15.6 Boolean オブジェクト
15.6.1 関数として呼出される Boolean コンストラクタ
15.6.1.1 Boolean (value)
15.6.2 Boolean コンストラクタ
15.6.2.1 new Boolean (value)
15.6.3 Boolean コンストラクタのプロパティ
15.6.3.1 Boolean.prototype
15.6.4 Boolean プロトタイプオブジェクトのプロパティ
15.6.4.1 Boolean.prototype.constructor
15.6.4.2 Boolean.prototype.toString ( )
15.6.4.3 Boolean.prototype.valueOf ( )
15.6.5 Boolean インスタンスのプロパティ
15.7 Number オブジェクト
15.7.1 関数として呼ばれる Number コンストラクタ
15.7.1.1 Number ( [ value ] )
15.7.2 Number コンストラクタ
15.7.2.1 new Number ( [ value ] )
15.7.3 Number コンストラクタのプロパティ
15.7.3.1 Number.prototype
15.7.3.2 Number.MAX_VALUE
15.7.3.3 Number.MIN_VALUE
15.7.3.4 Number.NaN
15.7.3.5 Number.NEGATIVE_INFINITY
15.7.3.6 Number.POSITIVE_INFINITY
15.7.4 Number プロトタイプオブジェクトのプロパティ
15.7.4.1 Number.prototype.constructor
15.7.4.2 Number.prototype.toString (radix)
15.7.4.3 Number.prototype.toLocaleString()
15.7.4.4 Number.prototype.valueOf ( )
15.7.4.5 Number.prototype.toFixed (fractionDigits)
15.7.4.6 Number.prototype.toExponential (fractionDigits)
15.7.4.7 Number.prototype.toPrecision (precision)
15.7.5 Number インスタンスのプロパティ
15.8 Math オブジェクト
15.8.1 Math オブジェクトの値プロパティ
15.8.1.1 E
15.8.1.2 LN10
15.8.1.3 LN2
15.8.1.4 LOG2E
15.8.1.5 LOG10E
15.8.1.6 PI
15.8.1.7 SQRT1_2
15.8.1.8 SQRT2
15.8.2 Math オブジェクトの関数プロパティ
15.8.2.1 abs (x)
15.8.2.2 acos (x)
15.8.2.3 asin (x)
15.8.2.4 atan (x)
15.8.2.5 atan2 (y, x)
15.8.2.6 ceil (x)
15.8.2.7 cos (x)
15.8.2.8 exp (x)
15.8.2.9 floor (x)
15.8.2.10 log (x)
15.8.2.11 max ( [ value1 [ , value2 [ , ... ] ] ] )
15.8.2.12 min ( [ value1 [ , value2 [ , ... ] ] ] )
15.8.2.13 pow (x, y)
15.8.2.14 random ( )
15.8.2.15 round (x)
15.8.2.16 sin (x)
15.8.2.17 sqrt (x)
15.8.2.18 tan (x)
15.9 Date オブジェクト
15.9.1 Date オブジェクトの概要及び内部演算子の定義
15.9.1.1 時間の範囲
15.9.1.2 日数及び一日内の時間
15.9.1.3 年数
15.9.1.4 月数
15.9.1.5 日付数
15.9.1.6 曜日
15.9.1.7 地方調整時
15.9.1.8 夏時間調整
15.9.1.9 地方時
15.9.1.10 時、分、秒、ミリ秒
15.9.1.11 MakeTime (hour, min, sec, ms)
15.9.1.12 MakeDay (year, month, date)
15.9.1.13 MakeDate (day, time)
15.9.1.14 TimeClip (time)
15.9.2 関数として呼ばれる Date コンストラクタ
15.9.2.1 Date ( [ year [, month [, date [, hours [, minutes [, seconds [, ms ] ] ] ] ] ] ] )
15.9.3 Date コンストラクタ
15.9.3.1 new Date (year, month [, date [, hours [, minutes [, seconds [, ms ] ] ] ] ] )
15.9.3.2 new Date (value)
15.9.3.3 new Date ( )
15.9.4 Date コンストラクタのプロパティ
15.9.4.1 Date.prototype
15.9.4.2 Date.parse (string)
15.9.4.3 Date.UTC (year, month [, date [, hours [, minutes [, seconds [, ms ] ] ] ] ] )
15.9.5 Date プロトタイプオブジェクトのプロパティ
15.9.5.1 Date.prototype.constructor
15.9.5.2 Date.prototype.toString ( )
15.9.5.3 Date.prototype.toDateString ( )
15.9.5.4 Date.prototype.toTimeString ( )
15.9.5.5 Date.prototype.toLocaleString ( )
15.9.5.6 Date.prototype.toLocaleDateString ( )
15.9.5.7 Date.prototype.toLocaleTimeString ( )
15.9.5.8 Date.prototype.valueOf ( )
15.9.5.9 Date.prototype.getTime ( )
15.9.5.10 Date.prototype.getFullYear ( )
15.9.5.11 Date.prototype.getUTCFullYear ( )
15.9.5.12 Date.prototype.getMonth ( )
15.9.5.13 Date.prototype.getUTCMonth ( )
15.9.5.14 Date.prototype.getDate ( )
15.9.5.15 Date.prototype.getUTCDate ( )
15.9.5.16 Date.prototype.getDay ( )
15.9.5.17 Date.prototype.getUTCDay ( )
15.9.5.18 Date.prototype.getHours ( )
15.9.5.19 Date.prototype.getUTCHours ( )
15.9.5.20 Date.prototype.getMinutes ( )
15.9.5.21 Date.prototype.getUTCMinutes ( )
15.9.5.22 Date.prototype.getSeconds ( )
15.9.5.23 Date.prototype.getUTCSeconds ( )
15.9.5.24 Date.prototype.getMilliseconds ( )
15.9.5.25 Date.prototype.getUTCMilliseconds ( )
15.9.5.26 Date.prototype.getTimezoneOffset ( )
15.9.5.27 Date.prototype.setTime (time)
15.9.5.28 Date.prototype.setMilliseconds (ms)
15.9.5.29 Date.prototype.setUTCMilliseconds (ms)
15.9.5.30 Date.prototype.setSeconds (sec [, ms ] )
15.9.5.31 Date.prototype.setUTCSeconds (sec [, ms ] )
15.9.5.32 Date.prototype.setMinutes (min [, sec [, ms ] ] )
15.9.5.33 Date.prototype.setUTCMinutes (min [, sec [, ms ] ] )
15.9.5.34 Date.prototype.setHours (hour [, min [, sec [, ms ] ] ] )
15.9.5.35 Date.prototype.setUTCHours (hour [, min [, sec [, ms ] ] ] )
15.9.5.36 Date.prototype.setDate (date)
15.9.5.37 Date.prototype.setUTCDate (date)
15.9.5.38 Date.prototype.setMonth (month [, date ] )
15.9.5.39 Date.prototype.setUTCMonth (month [, date ] )
15.9.5.40 Date.prototype.setFullYear (year [, month [, date ] ] )
15.9.5.41 Date.prototype.setUTCFullYear (year [, month [, date ] ] )
15.9.5.42 Date.prototype.toUTCString ( )
15.9.6 Date インスタンスのプロパティ
15.10 RegExp (正規表現) オブジェクト
15.10.1 パターン
15.10.2 パターンの意味
15.10.2.1 表記法
15.10.2.2 Pattern
15.10.2.3 Disjunction
15.10.2.4 Alternative
15.10.2.5 Term
15.10.2.6 Assertion
15.10.2.7 Quantifier
15.10.2.8 Atom
15.10.2.9 AtomEscape
15.10.2.10 CharacterEscape
15.10.2.11 DecimalEscape
15.10.2.12 CharacterClassEscape
15.10.2.13 CharacterClass
15.10.2.14 ClassRanges
15.10.2.15 NonemptyClassRanges
15.10.2.16 NonemptyClassRangesNoDash
15.10.2.17 ClassAtom
15.10.2.18 ClassAtomNoDash
15.10.2.19 ClassEscape
15.10.3 関数として呼出される RegExp コンストラクタ
15.10.3.1 RegExp(pattern, flags)
15.10.4 RegExp コンストラクタ
15.10.4.1 new RegExp(pattern, flags)
15.10.5 RegExp コンストラクタのプロパティ
15.10.5.1 RegExp.prototype
15.10.6 RegExp プロトタイプオブジェクトのプロパティ
15.10.6.1 RegExp.prototype.constructor
15.10.6.2 RegExp.prototype.exec(string)
15.10.6.3 RegExp.prototype.test(string)
15.10.6.4 RegExp.prototype.toString()
15.10.7 RegExp インスタンスのプロパティ
15.10.7.1 source
15.10.7.2 global
15.10.7.3 ignoreCase
15.10.7.4 multiline
15.10.7.5 lastIndex
15.11 Error オブジェクト
15.11.1 関数として呼ばれる Error コンストラクタ
15.11.1.1 Error (message)
15.11.2 Error コンストラクタ
15.11.2.1 new Error (message)
15.11.3 Error コンストラクタのプロパティ
15.11.3.1 Error.prototype
15.11.4 Error プロトタイプオブジェクトのプロパティ
15.11.4.1 Error.prototype.constructor
15.11.4.2 Error.prototype.name
15.11.4.3 Error.prototype.message
15.11.4.4 Error.prototype.toString ( )
15.11.5 Error インスタンスのプロパティ
15.11.6 この標準において使用されるネイティブエラー型
15.11.6.1 EvalError
15.11.6.2 RangeError
15.11.6.3 ReferenceError
15.11.6.4 SyntaxError
15.11.6.5 TypeError
15.11.6.6 URIError
15.11.7 NativeError オブジェクトの構造
15.11.7.1 関数として呼ばれる NativeError コンストラクタ
15.11.7.2 NativeError (message)
15.11.7.3 NativeError コンストラクタ
15.11.7.4 New NativeError (message)
15.11.7.5 NativeError コンストラクタのプロパティ
15.11.7.6 NativeError.prototype
15.11.7.7 NativeError プロトタイプオブジェクトのプロパティ
15.11.7.8 NativeError.prototype.constructor
15.11.7.9 NativeError.prototype.name
15.11.7.10 NativeError.prototype.message
15.11.7.11 NativeError インスタンスのプロパティ
A 文法要約
A.1 字句文法
A.2 数について
A.3 式
A.4 文
A.5 関数およびプログラム
A.6 URI 文字クラス
A.7 正規表現
B 互換性
B.1 追加構文
B.1.1 数値リテラル
B.1.2 文字列リテラル
B.2 追加プロパティ
B.2.1 escape (string)
B.2.2 unescape (string)
B.2.3 String.prototype.substr (start, length)
B.2.4 Date.prototype.getYear ( )
B.2.5 Date.prototype.setYear (year)
B.2.6 Date.prototype.toGMTString ( )
奥付
Issued: / Revised: / All rights reserved. © 2002-2016 TAKI