美文网首页
apply ,call 区别 以及 apply特性的妙用

apply ,call 区别 以及 apply特性的妙用

作者: strong9527 | 来源:发表于2016-09-08 19:54 被阅读21次

    call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向;
    而在参数方面两个方法也有区别:

    
    function fun(){
        ////
    }
    
    func.apply(this,[arg1,arg2]);
    func.call(this,arg1,arg2);
    
    
    

    我们看到两个方法的参数不同但是效果是一样的。

    也就是说在运用apply的时候他会把数组拆分为它的每一个内容

    [1,2,3] => 1,2,3
    
    

    所以当我们遇到 Math.min(arg1,arg2,arg3) 不支持传入数组参数的方法我们可以用apply方法拆分数组。

    var a = [1,2,3];
    Math.min.apply(null,a);
    //这样就达到了选出数组中最小数字的目的。非常方便。
    

    相关文章

      网友评论

          本文标题:apply ,call 区别 以及 apply特性的妙用

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