標籤:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>JavaScript中的繼承</title><script type="text/javascript">// 父類function Person(name,email){ // 父類的構造方法 this.name = name ; this.email = email ;}Person.prototype.getInfo = function(){ return this.name+"的Email是:"+this.email ;}// 子類function Employee(name,email,title){ // 如同進階程式語言中的super()方法,調用父類的構造方法,但必須傳入scope為子類對象的執行個體 Person.call(this,name,email) ; // 子類特色的屬性 this.title = title ;}// 如果要繼承Person,子類的prototype必須指定父類的執行個體Employee.prototype = new Person () ;var emp = new Employee(‘1212‘,‘[email protected]‘,‘title1234‘);// 如果沒有明確支援子類使用構造方法為父類的構造方法 console.info(Employee.prototype);console.info(emp.getInfo());delete Employee.prototype.name ; // 如果子類不需要父類的屬性可以通過delete進行刪除// 如果子類和父類的構造方法處理事情不同可以明確的指出用子類的構造方法Employee.prototype.constructor = Employee ;console.info(Employee.prototype.constructor) ;</script></head><body></body></html>
JavaScript物件導向之類的繼承