美文网首页
call & apply

call & apply

作者: Love小六六 | 来源:发表于2017-10-12 21:18 被阅读0次

    在特定的作用域中调用函数
    apply接收两个参数,一个为在其中运行的函数的作用域,另一个为参数数组
    call第一个参数也是运行函数的作用域,但其余参数都必须逐个列举出来

    sum.apply(this, [num1, num2]);
    sum.call(this, num1, num2);
    

    主要用于扩充函数的作用域

    window.color = "red";
    var o = { color: "blue" };
    function sayColor(){
        alert(this.color);
    }
    sayColor();//red
    sayColor.call(this);//red
    sayColor.call(window);//red
    sayColor.call(o);//blue
    
    window.color = "orange";
    var o = { color: "blue",
            sayColor:function(){
             alert(this.color);
    }};
    o.sayColor() // blue
    o.sayColor.call(this) //orange
    o.sayColor.call(window) //orange
    o.sayColor.call(o) // blue
    

    相关文章

      网友评论

          本文标题:call & apply

          本文链接:https://www.haomeiwen.com/subject/ltaoyxtx.html