方法"/>
【挥舞JS】JS实现继承,封装一个extends方法
父类
function Person(name, age) {this.name = name;this.age = age;
}Person.prototype = {eat: function () {console.log(this.name + '正在吃饭...');},sang: function () {console.log(this.name + '正在唱歌...');}
};
var liuyu = new Person('刘雨', 26);
子类
function Student(name, age, score) {Person.call(this, name, age);this.score = score;
}
封装一个 extends 方法
//子类 extends 父类
Function.prototype.extends = function (func, options) {for (var key in func.prototype) {this.prototype[key] = func.prototype[key];}for (var name in options) {this.prototype[name] = options[name];}
};
子类可以继承父类的属性和方法,也可以扩展自己的属性和方法。extends 方法参数:1.父类 2.需要扩展的属性和对象的一个对象集合。
Student.extends(Person, {study: function () {console.log(this.name + '正在学习...');}
});var can = new Student('can', 22, '良好');
can.eat();
can.work();
更多推荐
【挥舞JS】JS实现继承,封装一个extends方法
发布评论