JavascriptのObjectとFunctオブジェクトについて話します.
1425 ワード
1.Objectオブジェクト
原型オブジェクト プロトタイプは対象の属性の一つで、つまりプロトタイプ属性です.各オブジェクトにはこの内部属性があります.彼自身も対象です.
Object.prototype.a=3.14;alert("Objectオブジェクトの例:"+new Object().a);alert(「Stringオブジェクトの属性:」+String.a)
解析:Objectのプロトタイプを拡張すると、オブジェクトがObject.prototypeに相当します.つまり、すべてのローカルオブジェクトがこのオブジェクトの属性を持っています.すべてのローカルオブジェクトがObjectオブジェクトを継承しているため、Stringにも属性aの値があります.
2.Functionオブジェクト
アーグメンントオブジェクト 一つの関数が実行されると、システムは自動的に関数オブジェクトに対してargmentsオブジェクト属性を作成します.argmentsオブジェクト属性は、関数体のみに使用され、関数の実際のパラメータを管理するために使用されます.
(1)caller属性
caler属性は関数の使用者を示しているので、以下の例では関数aを呼び出すのはfunction b()である.関数bを呼び出したのはnullです.
lengthは、argmentsオブジェクトの属性であり、関数が呼び出された時に伝達されるパラメータの個数を表し、配列によって実際のパラメータにアクセスすることができます.
原型オブジェクト プロトタイプは対象の属性の一つで、つまりプロトタイプ属性です.各オブジェクトにはこの内部属性があります.彼自身も対象です.
Object.prototype.num= 10;
alert(" :"+ Object.num);
Object.num = 20;
alert(" :"+Object.num);
原型チェーンObject.prototype.a=3.14;alert("Objectオブジェクトの例:"+new Object().a);alert(「Stringオブジェクトの属性:」+String.a)
解析:Objectのプロトタイプを拡張すると、オブジェクトがObject.prototypeに相当します.つまり、すべてのローカルオブジェクトがこのオブジェクトの属性を持っています.すべてのローカルオブジェクトがObjectオブジェクトを継承しているため、Stringにも属性aの値があります.
2.Functionオブジェクト
アーグメンントオブジェクト 一つの関数が実行されると、システムは自動的に関数オブジェクトに対してargmentsオブジェクト属性を作成します.argmentsオブジェクト属性は、関数体のみに使用され、関数の実際のパラメータを管理するために使用されます.
(1)caller属性
caler属性は関数の使用者を示しているので、以下の例では関数aを呼び出すのはfunction b()である.関数bを呼び出したのはnullです.
var a = new Function("alert('a:'+a.caller)");
function b()
{
a();
alert('b:'+b.caller);
}
b();
(2)length属性lengthは、argmentsオブジェクトの属性であり、関数が呼び出された時に伝達されるパラメータの個数を表し、配列によって実際のパラメータにアクセスすることができます.
function argc()
{
alert(arguments[0]+arguments[1]+arguments[3]);
}
argc(1,2,3);
運転結果は6です.