JavaScript 是一种基于原型(prototype) 的面向对象语言
其继承是通过一个对象的prototype 属性实现的
将一个构造函数的prototype 赋值为其父的一个实例即可实现继承,
此时再用此构造函数创建出来的实例都会具有父类型的那个实例中的属性和值
示例代码:
<html> <head> <title>对象的继承</title> <script type="text/javascript"> function Person(name, age) { this.name = name; this.age = age; } function Student(num) { this.num = num; } var person = new Person("zhangyu", 20); window.alert("Person 的prototype 是:" + Person.prototype); window.alert("person 的prototype 是:" + person.prototype); var student_not_inherit = new Student(1701090118); window.alert("Student 的prototype 是:" + Student.prototype); window.alert("student_not_inherit 的prototype 是:" + student_not_inherit.prototype); window.alert("student_not_inherit 的name属性是:" + student_not_inherit.name); Student.prototype = person; var student_inherit = new Student(1701090118); window.alert("Student 的prototype 是:" + Student.prototype); window.alert("student_inherit 的prototype 是:" + student_inherit.prototype); window.alert("student_inherit 的name属性是:" + student_inherit.name); </script> </style> </head> <body> <p>演示继承</p> </body> </html> |