說真的,學習JavaScript時,面向對象與原型這章特別考驗你的編程基礎能力,邏輯性很強,初學時,整個人都是懵逼的狀態,現在依然有點,每個函數的封裝方式都是從缺點最多的寫法進入,再一步一步深入,不斷優化函數,最終,使得自己寫出的函數能夠代碼精簡,並且相容性好,下麵我就分享下最基礎的工廠模式吧!(創 ...
說真的,學習JavaScript時,面向對象與原型這章特別考驗你的編程基礎能力,邏輯性很強,初學時,整個人都是懵逼的狀態,現在依然有點,每個函數的封裝方式都是從缺點最多的寫法進入,再一步一步深入,不斷優化函數,最終,使得自己寫出的函數能夠代碼精簡,並且相容性好,下麵我就分享下最基礎的工廠模式吧!(創建對象)
1.首先要說明的是工廠模式的好處:那就是它能解決實例化對象產生的大量重覆的問題。
2.下麵我來寫一段非公工廠模式下:
//創建一個對象,然後給這個對象創建新屬性和方法 var Nofactory=new object(); Nofactory.name='Lee'; Nofactory.age=100; Nofactory.run=function(){ return this.name+this.age; } alert(Nofactory.run());
如果我要改變屬性的話,每次都要重新創建對象,步驟很重覆
3.工廠模式:
//集中實例化的函數 function createObject(name,age){ var obj=new Object(); obj.name=name; obj.age=age; obj.run=function(){ return this.name+this.age; }; return obj; } var factory1=createObject('Lee',100);//實例化對象 var factory2=createObject('Jack',50);//實例化對象 alert(factory1.run());//列印出結果是:Lee100 alert(factory2.run());//列印出結果是:Jack50