一、建立單個物件
方式一:object建構函式--->var o=new object();o.key=value;...
方式二:物件字面量--->
方式一和二缺點:使用相同的介面建立很多物件會產生大量重複**,使用方式三解決
方式三:工廠模式--->使用函式封裝以特定介面建立物件的細節
function createobject(param1,param2,...)
方式三缺點:無法識別物件的型別,使用二--->方式一解決
二、建立特定型別物件
方式一:建構函式模式--->建立自定義的建構函式,自定義物件型別的屬性和方法,建構函式與普通函式的區別是建構函式使用new關鍵字呼叫來建立物件,這種建立方式會經歷4個步驟--->①建立乙個新物件②將建構函式的作用域(this)賦給新物件(如果是在全域性範圍內呼叫普通函式this指向的是window)③執行建構函式中的**(新增屬性和方法)④返回新物件
function createobject(param1,param2,...)
var o=new createobject(param1,param2...)
方式一缺點:每次建立的物件中方法會重複建立,因為函式也是物件,使用方式二解決
方式二:原型模式--->每個函式都有乙個原型屬性prototype指標指向包含所有物件共享的屬性和方法的原型物件
createobject.prototype.param3=...
方式二缺點:當原型物件的共享屬性為引用型別屬性時,例項修改該屬性值將會覆蓋原型物件中原有引用型別屬性值,使用方式三解決
方式三:組合使用建構函式模式和原型模式--->建立自定義型別最常見的方式,建構函式模式用於定義例項屬性而原型模式用於定義方法和共享的屬性
JavaScript 建立物件
工廠模式抽象了建立具體物件的過程,能夠快速建立大量具有相似屬性及方法的物件。function createperson name,age,job obj.name name obj.age age obj.job job obj.sayname function return obj var per...
JavaScript 建立物件
function person var person new person 複製 使用關鍵字new建立新例項物件經過了以下幾步 1 建立乙個新物件,如 var person 2 新物件的 proto 屬性指向建構函式的原型物件。3 將建構函式的作用域賦值給新物件。也所以this物件指向新物件 4 執...
javascript物件建立
1 var person new object 2 person.name lea 3 person.age 26 4alert person.name 5 alert person name 1 var person 5 alert person my age 一般來說物件訪問屬性時使用點表示法,...