美文网首页
call笔记

call笔记

作者: 101架钢琴 | 来源:发表于2017-04-10 16:32 被阅读0次

    总结:

    1、call的第一个参数是this
    2、call的其他参数是arguments
    3、返回值用于返回结果,不过没有return,就返回undefined
    4、形参就是var a =arguments[0]
    5、

      add.call("abcds",1,2);
      add.apply("abcds",[1,2]);
    

    当参数少时用call,参数多或者不知数组长度时用apply

    推理

    1、

    function b (){
         console.log(this);
         console.log(arguments);
    }
    b.call();
    
    Paste_Image.png

    没传的时候,this为window
    2、

    function b (){
         console.log(this);
         console.log(arguments);
    }
    b.call({name:'this'},1,2,4);
    
    Paste_Image.png

    类似于:

    function b (){
         console.log(this);
         console.log(arguments);
    }
    var obj={name:'this'};
    b.call(obj,1,2,4);
    

    3、

    function add (){
         console.log(arguments[0]);
         console.log(arguments[1]);
         console.log(arguments[0]+arguments[1]);
    }
    var sum=add.call(undefined,1,2);
    console.log(sum);
    
    Paste_Image.png

    add函数里需要return 出结果

    相关文章

      网友评论

          本文标题:call笔记

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