創(chuàng)建對(duì)象的模式多種多樣,但是各種模式又有怎樣的利弊呢?有沒(méi)有一種最為完美的模式呢?下面我將就以下幾個(gè)方面來(lái)分析創(chuàng)建對(duì)象的幾種模式:
- Object構(gòu)造函數(shù)和對(duì)象字面量方法
- 工廠(chǎng)模式
- 自定義構(gòu)造函數(shù)模式
- 原型模式
- 組合使用自定義構(gòu)造函數(shù)模式和原型模式
- 動(dòng)態(tài)原型模式、寄生構(gòu)造函數(shù)模式、穩(wěn)妥構(gòu)造函數(shù)模式
第一部分:Object構(gòu)造函數(shù)和對(duì)象字面量方法
我之前在博文《javascript中對(duì)象字面量的理解》中講到過(guò)這兩種方法,如何大家不熟悉,可以點(diǎn)進(jìn)去看一看回顧一下。它們的優(yōu)點(diǎn)是用來(lái)創(chuàng)建單個(gè)的對(duì)象非常方便。但是這種方法有一個(gè)明顯的缺點(diǎn):利用同一接口創(chuàng)建很多對(duì)象是,會(huì)產(chǎn)生大量的重復(fù)代碼。這句話(huà)怎么理解呢?讓我們看一下下面的代碼: