prototype プロパティ
指定されたオブジェクトのクラスのプロトタイプへの参照を返します。
objectName.prototype
引数 objectName には、オブジェクトの名前を指定します。
解説
prototype プロパティを使用すると、オブジェクトのクラスが持つ機能の基本セットを知ることができます。オブジェクトの新しいインスタンスは、そのオブジェクトに割り当てられているプロトタイプの機能を "継承" します。
たとえば、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);
var y = x.max( );
このコードが実行されると、配列 x 内の最も大きい値である 6 が y に格納されます。
組み込み JScript オブジェクトの場合は、すべてが値の取得のみ可能な prototype プロパティを持っています。これらのオブジェクトのプロトタイプには、このコード例のように機能を追加することはできますが、これらのオブジェクトに別のプロトタイプを割り当てることができません。ただし、ユーザー定義型オブジェクトは、新しいプロトタイプに代入できます。
このランゲージ リファレンスの各組み込みオブジェクトのメソッドまたはプロパティの一覧には、それぞれのメソッドまたはプロパティがそのオブジェクトのプロトタイプに含まれているかどうかが示されます。
必要条件
参照
対象: Array オブジェクト | Boolean オブジェクト | Date オブジェクト | Function オブジェクト | Number オブジェクト | Object オブジェクト | String オブジェクト