源代码:
下载代码
AI 编程工具
点击运行
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body> <h2>JavaScript 类继承</h2> <p>JavaScript 类继承使用 extends 关键字。</p> <p>"super" 方法用于调用父类的构造函数。</p> <p id="demo"></p> <p id="demo2"></p> <script> class Polygon { constructor(height, width) { this.name = 'Rectangle'; this.height = height; this.width = width; } sayName() { return 'Hi, I am a ' + this.name + '.'; } get area() { return this.height * this.width; } set area(value) { this._area = value; } } class Square extends Polygon { constructor(length) { // 这里,它调用父类的构造函数的, // 作为 Polygon 的 height, width super(length, length); this.height; // 需要放在 super 后面,不然引发 ReferenceErro // 注意:在派生的类中,在你可以使用'this'之前,必须先调用 super()。 // 忽略这,这将导致引用错误。 this.name = 'Square'; } } let s = new Square( 5 ); document.getElementById("demo").innerHTML = s.sayName(); document.getElementById("demo2").innerHTML = s.area; </script> </body> </html>
运行结果: