prototype プロパティ
更新 : 2007 年 11 月
指定されたオブジェクトのクラスのプロトタイプへの参照を返します。
object.prototype
引数
- object
必ず指定します。オブジェクトの名前を指定します。
解説
prototype プロパティを使用すると、オブジェクトのクラスが持つ機能の基本セットを知ることができます。オブジェクトの新しいインスタンスは、そのオブジェクトに割り当てられているプロトタイプの機能を "継承" します。
組み込みオブジェクトはすべて、値の取得のみ可能な prototype プロパティを持っています。これらのオブジェクトのプロトタイプには、このコード例のように機能を追加することはできますが、オブジェクトに別のプロトタイプを割り当てることはできません。ただし、ユーザー定義オブジェクトは、新しいプロトタイプに割り当てることができます。
このランゲージ リファレンスには、組み込みオブジェクトごとにメソッドとプロパティの一覧があり、オブジェクトのプロトタイプに含まれているメソッドとプロパティを調べることができます。
メモ : |
---|
組み込みオブジェクトの prototype プロパティは、高速モードで実行されている場合は変更できません。JScript の既定のモードは高速モードです。prototype プロパティを使用するプログラムをコマンド ラインからコンパイルするには、/fast- を使用して fast オプションをオフにする必要があります。ASP.NET で fast オプションをオフにするのは安全ではありません。スレッドに関する問題が発生する場合があります。 |
使用例
最も大きい配列要素を返す Array オブジェクトに任意のメソッドを追加する場合は、関数を宣言し、Array.prototype に追加してから使用します。
function array_max() {
var i, max = this[0];
for (i = 1; i < this.length; i++) {
if (max < this[i])
max = this[i];
}
return max;
}
Array.prototype.max = array_max;
var x = new Array(1, 2, 3, 4, 5, 6);
print(x.max());
/fast- オプションを指定してコンパイルすると、プログラムの出力は次のようになります。
6
必要条件
対象
Array オブジェクト| Boolean オブジェクト| Date オブジェクト| Function オブジェクト| Number オブジェクト| Object オブジェクト| String オブジェクト