Open Sogrey opened 4 years ago
apply()方法可以在使用一个指定的 this 值和一个参数数组(或类数组对象)的前提下调用某个函数或方法。call()方法类似于apply(),不同之处仅仅是call()接受的参数是参数列表。
apply()
this
call()
const obj1 = { result:0 }; const obj2 = { result:0 }; function reduceAdd(){ let result = 0; for(let i = 0, len = arguments.length; i < len; i++){ result += arguments[i]; } this.result = result; } reduceAdd.apply(obj1, [1, 2, 3, 4, 5]); // 15 reduceAdd.call(obj2, 1, 2, 3, 4, 5); // 15
Function.prototype.call 方法的用途是什么? #255 Function.prototype.apply 方法的用途是什么? #254
Function.prototype.call
Function.prototype.apply
apply()
方法可以在使用一个指定的this
值和一个参数数组(或类数组对象)的前提下调用某个函数或方法。call()
方法类似于apply()
,不同之处仅仅是call()
接受的参数是参数列表。Function.prototype.call
方法的用途是什么? #255Function.prototype.apply
方法的用途是什么? #254