Javascript 物件導向程式設計封裝問題

2021-07-14 11:01:08 字數 1000 閱讀 2598

//建構函式模式相對於工廠模式來說,比較省記憶體。

//下面的方法是建構函式模式加上原型模式實現,建構函式模式雖說比工廠模式省記憶體,

//但是還是存在浪費記憶體的現象。

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...