JavaScript 中通过call或者apply用来代替另一个对象调用一个方法,将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。
简单的说就是改变函数执行的上下文,这是最基本的用法。两个方法基本区别在于传参不同。
call(obj,arg1,arg2,arg3);call第一个参数传对象,可以是null。参数以逗号分开进行传值,参数可以是任何类型。
- //类的继承
-
function person(name,age){
-
this.name = name;
-
this.age = age;
-
this.alertName = function(){
-
alert(this.name);
-
};
-
this.alertAge = function(){
-
alert(this.age);
-
}
-
}
-
-
function inherit(name,age,***){
-
person.call(this,name,age);
-
this.*** = ***;
-
this.alert*** = function(){
-
alert(this.***);
-
}
-
}
-
-
var test = new inherit("铁骑如风",26,"男");
-
test.alertName(); //铁骑如风
-
test.alertAge(); //26
-
test.alert***(); //男
阅读(879) | 评论(0) | 转发(0) |