javascript之call和apply的简单用法

来源:互联网 发布:关公战秦琼 知乎 编辑:程序博客网 时间:2024/05/16 23:44

call apply  简单的用法:绑定一些函数 用于传递参数 调用 

简单的使用:

function sum(x , y){<span style="white-space:pre"></span>return x+y;}function call1(num1 , num2){return sum.call(this , num1 , num2);}function apply1(num1 , num2){return sum.apply(this , [num1,num2]);  <pre name="code" class="javascript"><span style="white-space:pre"></span>//return sum.apply(this , arguments);
}alert(call1(10 , 20));alert(apply1(20,40));

call, apply方法区别是,从第二个参数起, call方法参数将依次传递给借用的方法作参数, 而apply直接将这些参数放到一个数组中再传递, 最后借用方法的参数列表是一样的.

扩充作用域

window.color = 'red';var obj = {color:'blue'};var obj2 = {color:'yellow'};function showColor(){alert(this.color);}showColor.call(window);showColor.call(obj);
根据传入的对象不同this指代不同,颜色也不一样。

如果不使用call方法,需要obj.showColor=showColor;       obj.showColor();

0 0
原创粉丝点击