js中apply和call 具体实例

Posted

tags:

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

apply:

1
var array1=[1,2,3,4,5];
var array2=[6,7,8,9,10];
Array.prototype.push.apply(array1,array2);
array1; //[1,2,3,4,5,6,7,8,9,10]

2
var numbers=[1,10,33,100,-55,423];
Math.max.apply(Math,numbers);
Math.max.call(Math,1,10,33,100,-55,423);
3
//来个经常用到的代理console.log方法
function log(msg){
    console.log(msg);
}
//上面是常用的写法,但这样 我传的值是 log(1) 没毛病 如果是log(1,2,3)呢?那就有毛病了
//他不管后面传多少参数都会被舍弃掉只会打印1
//改进版本
function log(){
    console.log.apply(console,arguments);
}
//这样不管传多少个参数都能打印出来了
 



以上是关于js中apply和call 具体实例的主要内容,如果未能解决你的问题,请参考以下文章

js兵器谱之魔法召唤师:call / apply

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

Js(Javascript)的apply call 和bind区别

JS call,apply, bind区别

JS复习之Call和Apply

关于JS中apply和call详细解答