深入之建立物件的多種方式以及優缺點

2022-05-03 02:21:05 字數 1507 閱讀 7704

// 1. 工廠模式

//缺點:物件無法識別,因為原型都指向object

function pe()

return o

}// 2. 建構函式模式

// 優點:例項可以識別為乙個特定的型別

// 缺點:每次建立例項每個方法都要被建立一次

function person(name) ;

}var person = new person('zhansan');

// 2.1 建構函式模式優化

// 優點:解決了每個方法都要被重新建立的問題

// 缺點:這叫啥封裝……

function person(name)

function getname()

var person = new person('zhansan');

// 3. 原型模式

// 優點:方法不會重新建立

// 缺點:1. 所有的屬性和方法都共享 2. 不能初始化引數

function person(name) ;

person.prototype.name = 'keivn';

person.prototype.getname = function() ;

var person1 = new person();

// 3.1 原型模式優化

// 優點:封裝性好了一點

// 缺點:重寫了原型,丟失了constructor屬性

function person(name) ;

person.prototype =

};var person1 = new person();

// 3.2 原型模式優化

// 優點:例項可以通過constructor屬性找到所屬建構函式

// 缺點:原型模式該有的缺點還是有

function person(name)

person.prototype =

};var person1 = new person();

// 4. 組合模式

// 優點:該共享的共享,該私有的私有,使用最廣泛的方式

// 缺點:有的人就是希望全部寫在一起,即更好的封裝性

function person(name)

person.prototype =

};var person1 = new person();

// 4.1 動態原型模式

// 注意:使用動態原型模式時,不能用物件字面量重寫原型

function person(name)

}}var person1 = new person();

// 如果你就是想用字面量方式寫**,可以嘗試下這種:

function person(name)

}return new person(name);

}}var person1 = new person('kevin');

var person2 = new person('daisy');

建立物件的多種方式

1.工廠模式 缺點 物件無法識別,因為原型都指向object function pe return o 2.建構函式模式 優點 例項可以識別為乙個特定的型別 缺點 每次建立例項每個方法都要被建立一次 function person name var person new person zhansan...

js建立物件的多種方式及優缺點

在js中,如果你想輸入乙個的資訊,例如姓名,性別,年齡等,如果你用值型別來儲存的話,那麼你就必須要宣告很多個變數才行,變數宣告的多了的話,就會造成變數汙染。所以最好的方式就是儲存到物件中。下面能我就給大家介紹幾種建立物件的方式,並且給大家說一下他們的優缺點 方式一 物件字面量 var obj 缺點 ...

android 建立bitmap的多種方式

bitmap代表這一張位圖,bitmapdrawable裡封裝的就是乙個bitmap物件。如果要將bitmap物件封裝成bitmapdrawable物件只需要用構造方法即可。講bitmap物件包裝成bitmapdrawable物件 bitmapdrawable drawable new bitmap...