Javascript中的apply()方法浅析

之前我们说过 Javascript Call 方法,这次我们就说说和Call方法类似的apply方法。

apply vs call

两者间的不同在于:传递的是参数,还是参数数组

这个是call的用法

复制代码 代码如下:


theFunction.call(valueForThis, arg1, arg2, ...)


而这个则是apply

复制代码 代码如下:


theFunction.apply(valueForThis, arrayOfArgs)


故而

复制代码 代码如下:


arrayOfArgs = [arg1, arg2, ...];

Javascript apply 方法

先看看之前的call的用法

复制代码 代码如下:


function print(p1, p2) {
    console.log( p1 + ' ' + p2);
}
print.call(undefined, "Hello", "World");


由上面的叙述,我们可以得出当

复制代码 代码如下:


    args =  "Hello", "World";
function print(p1, p2) {
    console.log( p1 + ' ' + p2);
}
print.call(undefined, args);


两者是等价的,而实际上他们也是等价的,输出结果同样是"Hello,World"!

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgfwfw.html