日期:2014-05-16 浏览次数:20525 次
<html> <head> <title>Example</title> </head> <body> <script type="text/javascript"> function ClassA(sColor) { this.color = sColor; } ClassA.prototype.sayColor = function () { alert(this.color); }; function ClassB(sColor, sName) { ClassA.call(this, sColor); this.name = sName; } ClassB.prototype = new ClassA(); //这里将ClassB的prototype设置为ClassA的一个实例 //那么ClassB的name属性不会被丢弃吗? //子类的属性和方法不是应该出现在 prototype 属性被赋值后吗? ClassB.prototype.sayName = function () { alert(this.name); }; var objA = new ClassA("blue"); var objB = new ClassB("red", "John"); objA.sayColor(); objB.sayColor(); objB.sayName(); </script> </body> </html>