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

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);
//这样就达到了选出数组中最小数字的目的。非常方便。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容