call和apply
Posted super_素素
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
以上是关于call和apply的主要内容,如果未能解决你的问题,请参考以下文章