1 つ目は、前述したプライベート型で、外部からはアクセスできないのが特徴です。
2 番目の型は動的パブリック型であり、その特徴は外部からアクセスでき、各オブジェクト インスタンスがコピーを保持し、相互に影響を与えないことです。
3 番目のタイプは静的パブリック タイプ、または一般にプロトタイプ属性と呼ばれ、その特徴は、各オブジェクト インスタンスが一意のコピーを共有し、その変更が相互に影響を与えることです。
4 番目のタイプはクラス属性です。これは、オブジェクト インスタンスの属性ではなく、タイプの属性であることを特徴とします。次の例は、オブジェクトが構築されていない場合でもアクセスできます。これら 4 つの属性タイプ: タイプの 4 つの属性
21.3
type="text/javascript" >
<--
function dwn(s)
{
document.write(s "
"); }
function myClass( )
{
var p = 100; //プライベート プロパティ; プライベート プロパティ
this.x = 10; //動的パブリック プロパティ
} myClass.prototype.y = 20; //静的パブリック プロパティまたはプロトタイプ プロパティ プロトタイプ プロパティ
myClass.z = 30; //静的プロパティ //静的プロパティ
var a = new myClass(); dwn(a.p); // 未定義 プライベート プロパティ オブジェクトは
dwn(a.x); //10 パブリック プロパティ
a.x = 20; a.y = 40;
dwn(a.x); //20
dwn(a.y); //動的パブリック プロパティ y はプロトタイプ プロパティ y をカバーします
delete(a.x); a.y);
dwn (a.x); //未定義 動的パブリック プロパティ x は削除後に存在しません
dwn(a.y); //20 動的パブリック プロパティ y はプロトタイプ プロパティ y に復元されます。削除されました
dwn(a.z); //未定義のクラス属性にはオブジェクトを通じてアクセスできません
dwn(myClass.z); //30 クラス属性にはクラス
< を通じてアクセスする必要があります。 ;/スクリプト>