js創建對象的幾種方式

第一種模式:工廠方式

js 代碼:

  1. var lev=function(){
  2. return "啊打";
  3. };
  4. function Parent(){
  5. var Child = new Object();
  6. Child.name="李小龍";
  7. Child.age="30";
  8. Child.lev=lev;
  9. return Child;
  10. };
  11. var x = Parent();
  12. alert(x.name);
  13. alert(x.lev());

說明:

1.在函數中定義對象,並定義對象的各種屬性,,雖然屬性可以爲方法,但是建議將屬性爲方法的屬性定義到函數之外,這樣可以避免重複創建該方法

2.引用該對象的時候,這裏使用的是 var x = Parent()而不是 var x = new Parent();因爲後者會可能出現很多問題(前者也成爲工廠經典方式,後者稱之爲混合工廠方式),不推薦使用new的方式使用該對象

3.在函數的最後返回該對象

4.不推薦使用這種方式創建對象,但應該瞭解

第二種模式:構造函數方式

 

Js代碼
  1. var lev=function(){
  2. return "啊打";
  3. };
  4. function Parent(){
  5. this.name="李小龍";
  6. this.age="30";
  7. this.lev=lev;
  8. };
  9. var x =new Parent();
  10. alert(x.name);
  11. alert(x.lev());

 

說明:

1.與工廠方式相比,使用構造函數方式創建對象,無需再函數內部重建創建對象,而使用this指代,並而函數無需明確return

2.同工廠模式一樣,雖然屬性的值可以爲方法,扔建議將該方法定義在函數之外

3..同樣的,不推薦使用這種方式創建對象,但仍需要了解

 

發佈了15 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章