es5和es6面向对象继承的最佳实践,附可以判断继承关系的方法
js实现对象的继承是开发人员迈向高级的重要基础,本文就es5和es6实现对象继承的最佳实践方式做一总结。 es5最佳继承模式“寄生组合” 关于es5多种继承方式实现的比较不太清除的,请移步“ ES5面向对象js实现继承的最优方式 ”如果对es5与es6定义对象不清楚的可以移步“ es5和es6定义对象比较 ”。 我们用es5继承的最佳实践“寄生组合方式”实现Person 和Gcc的继承关系: let Person = function(name,age){ this.name = name; this.age = age; } Person.prototype.say = function(){ console.log(`大家好我是${this.name},我今年${this.age}岁了。`) } //子类 function Gcc(name, age, sex) { Person.apply(this, [name,age]); //Gcc的属性 this.sex = sex; } Gcc.prototype = Object.create(Person.prototype, { constructor: { value: Gcc, writable: true, configurable: true } }); //Gcc的公共方法 Gcc.prototype.saySex