apply和call的用法

Posted liumcb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apply和call的用法相关的知识,希望对你有一定的参考价值。

以前对与apply()还有call()一直处于一种我知道这是干什么,但是不知道怎么使用的情况,今天看别人的博客的时候,看到了一点这类知识,感觉有点感觉,现在把新的心得写下来。

A.apply(B,[arr]);    

A.call(B,str1,str2...);    

这两个的不同之处就在于后面的那个参数类型,apply是数组,call是一个一个的参数。总体意思就是用A的方法替换B 的方法。

我以前也知道是这样的知识点,但是不知道怎么用,现在看了一个例子感觉很有启发性。

 

// add()函数,将参数相加求和;

function add(a,b,c){

  return a + b + c;

}

add(1,2,3)    //结果为6;

但是若是要求数组的和呢?这个函数是没办法求数组和的,只能用来求一个一个参数的和;现在这种情况就可以使用apply()方法了;

var arr = [1,2,3];

add.apply(null,arr);    // 结果为6

 

以上是关于apply和call的用法的主要内容,如果未能解决你的问题,请参考以下文章

js call apply 用法区别

js call apply 用法区别

简述JS中 appy 和 call 的详细用法

apply()和call()用法

apply和call的用法

apply和call的用法