//建構函式模式相對於工廠模式來說,比較省記憶體。
//下面的方法是建構函式模式加上原型模式實現,建構函式模式雖說比工廠模式省記憶體,
//但是還是存在浪費記憶體的現象。
function person(name,age,job)
person.prototype.sayname=function()
person.prototype.sayage=function()
//var person1=new person("nicholas",29,"software engineer");
var person1=new person("tom",22,"doctor");
var person2=new person("nicholas",29,"software engineer");
person2.sayname();
person1.sayage();
//prototype有一些驗證方法:
//isprototypeof(),用來判斷某個proptotype物件和某個例項之間的關係。
alert(person.prototype.isprototypeof(person1)); //true
alert(person.prototype.isprototypeof(person2)); //true
//hasownproperty(),用來判斷某乙個屬性到底是本地屬性,還是繼承自prototype物件的屬性。
alert(person1.hasownproperty("name"));//ture
alert(person1.hasownproperty("sayname"));//false
//in運算子,可以用來判斷,某個例項是否含有某個屬性,不管是不是本地屬性
alert("name" in person1);//true
alert("sayname" in person1);//true
for(var property in person1)
javascript 學習筆記之物件導向程式設計
物件特殊屬性 資料屬性和訪問器屬性 1 資料屬性 configurable 是否可刪除 enumerable 是否可列舉for in writable 是否可寫 value 值 要修改預設屬性必須使用defineproperty object,key,descriptor 方法 例如 var per...
JavaScript物件導向
方法一 建構函式法 function cat cat.prototype.showname function var cat new cat cat.name tom cat.showname tom 它用建構函式模擬 類 在其內部用this關鍵字指代例項物件。類的屬性和方法,還可以定義在建構函式的...
javaScript物件導向
code 類lecture構造器 使用兩個字串函式,name和teacher function lecture name,teacher 類lecture的方法,生成乙個顯示該課程資訊的字串 lecture.prototype.display function 類schedule的構造器 使用乙個l...