call和apply
call和apply的作用: 1、调用函数 2、改变所调用函数的内部的this指向 3、借用别的对象的方法 */ function foo(a,b,c){ console.log(a,b,c); console.log(a + b + c); console.log(this); } // foo(1,2,3); // call的参数是单个的 foo.call(null,1,2,3); // // apply的参数是一个数组 // foo.apply(null,[1,2,3]); // 在全局作用域内,所有的全局变量和全局函数都是window的成员(属性或者方法) var a = 1,b = 2; function fn(c,d){ console.log(this.a + this.b + c + d); } fn(3,4); //10 fn.call({ a : 3, b : 4 },5,6); //18 fn.apply({ a : 6, b : 9 },[7,8]); //30 var arr = [12,324,45,456,56,6767,34]; console.log(Math.max.apply(null,arr)); //6767 来源: https://www.cnblogs.com/woniubushinide/p/6791827.html