Javascript中的apply()方法浅析
之前我们说过JavascriptCall方法,这次我们就说说和Call方法类似的apply方法。
applyvscall
两者间的不同在于:传递的是参数,还是参数数组
这个是call的用法
theFunction.call(valueForThis,arg1,arg2,...)
而这个则是apply
theFunction.apply(valueForThis,arrayOfArgs)
故而
arrayOfArgs=[arg1,arg2,...];
Javascriptapply方法
先看看之前的call的用法
functionprint(p1,p2){ console.log(p1+''+p2); } print.call(undefined,"Hello","World");
由上面的叙述,我们可以得出当
args= "Hello","World"; functionprint(p1,p2){ console.log(p1+''+p2); } print.call(undefined,args);
两者是等价的,而实际上他们也是等价的,输出结果同样是"Hello,World"!