コールの実装。メソッドを呼び出します。パラメータを渡す機能CAL(){} VAR OBJ = {} cal.call(OBJ、 "SAM"、 "kavin")変化点、
Function.prototype.call(コンテキスト){
//ウィンドウを指したときに渡されたオブジェクトがnullまたは空の場合
VaRの文脈=コンテキスト|| 窓
] [引数の=ました
最初//関数呼び出しコールを取得するには、これを取得することができます
context.fn =この;
//私たちは、その後、内部に実行される関数のパラメータへの引数のこの配列を置きます。
用(VAR I = 1、LEN <arguments.lengthを、iがLEN <; iは++){
args.push( "引数(" + I + ")")
}
するvar RET =のeval( "context.fn(" +引数+ ")")
context.fn削除
・リターン・右
}
パラメータを渡し、ポイントを変更する機能CAL(){} VAR OBJ = {} cal.call(OBJ、[ "SAM"、 "kavinを"])適用の実現方法
Function.prototype.apply2 =関数(コンテキスト、ARR){
VaRの文脈=コンテキスト|| 窓;
だったのres = ''
context.fn =この;
(もし!ARR){
RES = context.fn()
}他{
] [=怒っていました
{(; iはLEN <I ++はVAR I = 0、LEN = arr.length)のために
arg.push( "ARR(" + I + ")")
}
RES =のeval(context.fn(+引数+))
}
context.fn削除
リターンRES
}