首頁 > web前端 > js教程 > javascript中call和apply的用法範例分析_javascript技巧

javascript中call和apply的用法範例分析_javascript技巧

WBOY
發布: 2016-05-16 16:06:06
原創
1055 人瀏覽過

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/>");
登入後複製

示範圖:

 

以上所述就是本文的全部內容了,希望大家能夠喜歡。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板