call 与 apply 的使用

作者:vkvi 来源:ITPOW(原创) 日期:2008-9-9

call 与 apply 的作用都是改变上下文,作用上没有区别,只是使用方式上有点区别。

call 是把函数的参数逐一加在 call 中,apply 是把函数的参数存为数组再加在 apply 中。

示例

<script type="text/javascript">
<!--
function f(a, b)
{
    alert(a + "\r\n" + b + "\r\n" + this.c);
}
 
function O1()
{
    this.c = "c1";
    this.f = f;
}
 
function O2()
{
    this.c = "c2";
    this.f = f;
}
 
var o1 = new O1();
var o2 = new O2();
f.call(o1, "a1", "a2");
f.apply(o2, ["a1", "a2"]);

-->
</script>

相关阅读

相关文章