1.オブジェクト
プロトタイプオブジェクト
プロトタイプはオブジェクトの属性、つまりプロトタイプ属性です。すべてのオブジェクトはこの内部属性を持ち、オブジェクト自体でもあります。
<script type="text/javascript"> Object.prototype.num= 10; alert("添加原型对象属性:"+ Object.num); Object.num = 20; alert("添加对象属性:"+Object.num); </script>
プロトタイプチェーン
Object.prototype.a = 3.14;
alert("オブジェクト object のインスタンス:" new Object().a);
alert("文字列オブジェクトのプロパティ:" String.a);
分析: Object のプロトタイプが拡張されると、オブジェクトが Object.prototype になるのと同じになります。つまり、すべてのローカル オブジェクトはこのオブジェクトのプロパティを持ちます。すべてのローカル オブジェクトは Object オブジェクトを継承するため、String も属性の値を持ちます。 a.
2.関数オブジェクト
引数オブジェクト
関数が実行されると、システムは関数オブジェクトの引数オブジェクト属性を自動的に作成します。引数オブジェクト属性は関数本体でのみ使用でき、関数の実際のパラメーターを管理するために使用されます。
(1) 呼び出し元属性
caller 属性は関数の呼び出し元を示すため、次の例では、関数 a の呼び出し元は関数 b() であり、関数 b の呼び出し元は null です。
<script type="text/javascript"> var a = new Function("alert('a:'+a.caller)"); function b() { a(); alert('b:'+b.caller); } b(); </script>
長さは、数値を示す引数オブジェクトのプロパティです。関数の呼び出し時に渡されるパラメータは、配列を通じてアクセスできます。
function argc() { alert(arguments[0]+arguments[1]+arguments[3]); } argc(1,2,3);