javascript继承(call方法)机制的两种实现
- 内部实现:
function ClassA(sColor) { this.color = sColor this.sayColor = function () { console.log(this.color) } } function ClassB(sName) { this.name = sName this.sayName = function () { console.log(this.name) } } function ClassC(sColor, sName) { ClassA.call(this,sColor) ClassB.call(this,sName) } var objA = new ClassA("blue") var objC = new ClassC("red", "John") objA.sayColor() objC.sayColor() objC.sayName()
- 外部实现:
function ClassA(sColor) { this.color = sColor this.sayColor = function () { console.log(this.color) } } function ClassB(sName) { this.name = sName this.sayName = function () { console.log(this.name) } } function ClassC(sColor, sName) { } var objA = new ClassA("blue") var objC = new ClassC() ClassA.call(objC,'red') ClassB.call(objC,'John') objA.sayColor() objC.sayColor() objC.sayName()
- 输出:
blue red John
当前题目:javascript继承(call方法)机制的两种实现
本文网址:http://myzitong.com/article/jpidpd.html