1.改变this指向问题
this在不同的地方,指向不同。
全局中this指向window
在事件函数中指向事件调用者
对象的方法中,this指向对象(this指向调用者,谁调用,this指向谁)
call和apply都可以修改函数中的this指向问题(功能一致,用法不一致)
-
call(obj,参数1,参数2,参数2)
-
apply(obj,参数)这里的参数是以数组的形式
2.解决对象属性继承问题
//人对象
function Person(name, age) {
this.name = name;
this.age = age;
}
//学生对象
function Student(no, name, age) {
this.no = no;
//属性继承
// Person.call(this, name, age);//对象冒充
Person.apply(this,[name,age])
}