call和apply的用法,並利用call實現js類的繼承
/*
* 矩形
*/
function Rectangle(len,width) {
this.len = len;
this.width = width;
}
/*
* 乘以
*/
function multiply(a,b) {
return a * b;
}
// 矩形實例
var rectangle = new Rectangle(15, 30);
//求矩形面積
var proportion = multiply.call(rectangle,rectangle.len, rectangle.width);
// 等價於call
//var proportion = multiply.apply(rectangle,[rectangle.len, rectangle.width]);
document.write("矩形的面積是:"+proportion);
document.write("<br/>");
document.write("/***********************分割線********************************/<br/>");
// 實現繼承
function Persion(name) {
this.name = name;
this.sayHello = function () {
return "hello,"+this.name;
}
}
function Student(name,sex,school) {
Persion.call(this,name);
this.sex = sex;
this.school = school;
this.mySex = function () {
return this.sex;
}
this.mySchool = function () {
return this.school;
}
}
var stu = new Student('fengjx','男','廣西機電職業技術學院')
document.write("stu sayHello:"+stu.sayHello());
document.write("<br/>");
document.write("stu sex is:"+stu.mySex());
document.write("<br/>");
document.write("stu school is :"+stu.mySchool());
document.write("<br/>");
演示圖:
以上所述就是本文的全部內容了,希望大家能夠喜歡。