本頁の目次 目次 次頁: A_Grammar_Summary 前頁: 15-10_RegExp_Objects
実行時エラーが発生したとき、Error オブジェクトのインスタンスが例外として投げられる。 Error オブジェクトはユーザ定義の例外クラスのための基本オブジェクトとして出されてもよい。
コンストラクタとしてではなく関数として Error が呼ばれるとき、それは新しい Error オブジェクトを生成して初期化する。それゆえ関数呼出し Error(...) は、同じ引数を持つオブジェクト生成式 new
Error(...) と等価である。
新規に構築されたオブジェクトの [[Prototype]] プロパティは、 Error.prototype (セクション 15.11.3.1) の初期値である、オリジナルの Error プロトタイプオブジェクトに設定される。
新規に構築されたオブジェクトの [[Class]] プロパティは、 "Error" に設定される。
引数 message が undefined でないならば、新規に構築されたオブジェクトの message プロパティは、 ToString(message) に設定される。
Error が new
式の一部として呼出されるとき、それはコンストラクタである: それは新規に生成されたオブジェクトを初期化する。
新規に構築されたオブジェクトの [[Prototype]] プロパティは、 Error.prototype (セクション 15.11.3.1) の初期値である、オリジナルの Error プロトタイプオブジェクトに設定される。
新規に構築されたオブジェクトの [[Class]] プロパティは、 "Error" に設定される。
引数 message が undefined でないならば、新規に構築されたオブジェクトの message プロパティは、 ToString(message) に設定される。
Error コンストラクタの内部 [[Prototype]] プロパティの値は、 Function プロトタイプオブジェクト (セクション 15.3.4) である。
内部プロパティと length プロパティ (値は 1) の他に、 Error コンストラクタは次のプロパティを持つ:
Error.prototype の初期値は、 Error プロトタイプオブジェクト (セクション 15.11.4) である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
Error プロトタイプオブジェクトは、それ自身が Error オブジェクト ([[Class]] が "Error") である。
Error プロトタイプオブジェクトの内部 [[Prototype]] プロパティの値は、 Object プロトタイプオブジェクト (セクション 15.2.3.1) である。
Error.prototype.constructor の初期値は、組込み Error コンストラクタである。
Error.prototype.name の初期値は、 "Error" である。
Error.prototype.message の初期値は、実装依存の文字列である。
実装が定義した文字列を返す。
Error インスタンスは、 Error プロトタイプオブジェクトから継承するものの上に特にプロパティを持たない。
実行時エラーが検出されたとき、下記の NativeError オブジェクトの一つが投げられる。これらのオブジェクトは全て、セクション 15.11.7 に述べたような同じ構造を共有する。
定義に沿わない方法でグローバル関数 eval が使用された事を示す。セクション 15.1.2.1 参照。
Indicates a 数値が許可された範囲を超過したことを示す。セクション 15.4.2.2, 15.4.5.1, 15.7.4.5, 15.7.4.6, 15.7.4.7 参照。
不正な reference 値が検出されたことを示す。セクション 8.7.1, 8.7.2 参照。
解析エラーが発生したことを示す。セクション 15.1.2.1, 15.3.2.1, 15.10.2.5, 15.10.2.9, 15.10.2.15, 15.10.2.19, 15.10.4.1 参照。
グローバル URI ハンドリング関数の一つが、定義に沿わない方法で使用されたことを示す。セクション 15.1.3 参照。
ECMAScript 実装が実行時エラーを検出したとき、セクション 15.11.6 に定義される NativeError オブジェクトの一つのインスタンスを投げる。これらのオブジェクトのそれぞれは下に述べる構造をもち、プロトタイプオブジェクトの name プロパティ、およびプロトタイプオブジェクトの実装依存の message プロパティにおいて NativeError の代わりにコンストラクタ名として使用される名前だけが異なる。
エラーオブジェクトのそれぞれについて、定義内の NativeError の reference は、セクション 15.11.6 からの適切なエラーオブジェクト名で置換されるべきである。
コンストラクタとしてではなく関数として NativeError が呼ばれるとき、それは新しいオブジェクトを生成して初期化する。オブジェクトの関数としての呼出しは、同じ引数を持つコンストラクタ呼出しと等価である。
新規に構築されたオブジェクトの [[Prototype]] プロパティは、このエラーコンストラクタのプロトタイプオブジェクトである。新規に構築されたオブジェクトの [[Class]] プロパティは、 "Error" に設定される。
引数 message が undefined でないならば、新規に構築されたオブジェクトの message プロパティは、 ToString(message) に設定される。
NativeError コンストラクタが new
式の一部として呼出されるとき、それはコンストラクタである: それは新規に生成されたオブジェクトを初期化する。
新規に構築されたオブジェクトの [[Prototype]] プロパティは、NativeError コンストラクタのプロトタイプオブジェクトに設定される。新規に構築されたオブジェクトの [[Class]] プロパティは、 "Error" に設定される。
引数 message が undefined でないならば、新規に構築されたオブジェクトの message プロパティは、 ToString(message) に設定される。
NativeError コンストラクタの内部 [[Prototype]] プロパティの値は、 Function プロトタイプオブジェクト (セクション 15.3.4) である。
内部プロパティと length プロパティ (値は 1 ) の他に、各 NativeError コンストラクタは次のプロパティを持つ:
NativeError.prototype の初期値は、 NativeError プロトタイプオブジェクト (セクション 15.11.7.7) である。各 NativeError コンストラクタは別個のプロトタイプオブジェクトを持つ。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
各 NativeError プロトタイプオブジェクトは、 Error オブジェクト ([[Class]] が "Error") である。
各 NativeError プロトタイプオブジェクトの内部 [[Prototype]] プロパティの値は、 Error プロトタイプオブジェクト (セクション 15.11.4) である。
与えられた NativeError コンストラクタのプロトタイプの constructor プロパティの初期値は、 NativeError コンストラクタ関数自身 (セクション 15.11.7) である。
与えられた NativeError コンストラクタのプロトタイプの name プロパティの初期値は、 コンストラクタの名前 (NativeError の代わりに使われる名前) である。
与えられた NativeError コンストラクタのプロトタイプの message プロパティの初期値は、実装依存の文字列である。
NOTE NativeError コンストラクタのプロトタイプは独自の toString 関数を持たないが、エラーのインスタンスはそれを Error プロトタイプオブジェクトから継承する
NativeError インスタンスは、 Error プロトタイプオブジェクトから継承するものの上に特にプロパティを持たない。