phpメソッド呼び出しモードと関数呼び出しモードのプロファイル例
既存の関数とオブジェクトは以下の通りです。
var doubling=function(x){
return x*2;
};
var obj={
val:100,
};
関数がモードを呼び出すと、thisはグローバルオブジェクトにバインドされます。この場合、オブジェクトの属性と方法が初期化されたときにも反応が得られます。現在はojbの補足として、
var obj={val:100,
prop:function(){
var that=this;
document.write('name: '+that+'; type: '+typeof(that)+'<br/>');
return doublling(that.val);
}(),
get_prop:function(){
var that=this;
document.write('name: '+that+'; type: '+typeof(that)+'<br/>');
return doublling(that.val);
},
};
propは実行される匿名関数を使用して、所在するオブジェクトのval値を関数で呼び出すモードのdoubling演算の結果を取得することを期待する。そしてget_propはメソッド呼び出しモードです。スクリプトローディング時に、objのプロパティpropを初期化する時、文「name:[object Window]」;type:object"出力は、Obj.get_を使用します。propの時、文「name:[object]」;type:object"出力します。前者は関数体の「this」が大域変数windowであり、後者は期待通りobj自身であることを示している。属性propと方法get_を確認できます。prop()の戻り値は、前者がwindowオブジェクトを乗算し、NaNに戻り、後者は200になる。obj字面量表式以外にnew_を設定したいです。prop属性とnew_ゲットするprop()方法は,結果が前文と一致し,方法がモードを呼び出してこそ,thisの自身へのバインディングが得られる。