1.命名空間
- js中存在命名空間概念,為了減少命名沖突。但js中沒有命名空間關(guān)鍵字。js實(shí)現(xiàn)思路,定義一個(gè)全局變量,將此命名空間的變量和方法,定義為這個(gè)全局變量的屬性
2.初始化分支,和延遲定義模式
- 構(gòu)造一個(gè)一個(gè)框架時(shí),有些模塊必須事先初始化($),另外一些模塊只有被調(diào)用時(shí)才需要初始化。好處,保證框架的可用性和加載效率上的最優(yōu)化。
我的理解是對(duì)于個(gè)函數(shù)來說我們可以用函數(shù)字面亮來實(shí)現(xiàn)延遲定義模式在函數(shù)執(zhí)行的時(shí)候不會(huì)預(yù)讀執(zhí)行。
Paste_Image.png
Paste_Image.png
3.配置對(duì)象模式
- 用對(duì)象來代替多個(gè)參數(shù),用于處理函數(shù)中有很多參數(shù)的問題。優(yōu)勢 不用考慮參數(shù)順序問題,可以跳過某些參數(shù)設(shè)置,擴(kuò)展性和可讀性更強(qiáng)。
Paste_Image.png
4.私有函數(shù)公有化
- 對(duì)象中私有函數(shù)對(duì)外不可見,私有函數(shù)公有化模式,用到了自執(zhí)行函數(shù),返回一個(gè)對(duì)象,保有對(duì)自由函數(shù)的可訪問性。
Paste_Image.png
5.鏈?zhǔn)秸{(diào)用模式
- 在單行中調(diào)用多個(gè)方法
- 思路在方法中返回this指針
Paste_Image.png