1. 程式人生 > 其它 >JavaScript建立物件的4種方法

JavaScript建立物件的4種方法

JavaScript建立物件的4種方法

原文連結:https://blog.csdn.net/dearzhuoer/article/details/84574140
所謂物件就是用來幫助你完成一些事情是,物件是有特徵和行為的,是具體特指的某一個事物。使用物件可以使程式更加整潔

    1. 通過Object()方法來建立
      Object()是JavaScript內部的物件,使用Object建立物件的語法:

      我們通過Object建立的一個Dog物件,這個物件有name,color,eat屬性;並且給這個物件定義了兩個方法,因此我們想用這兩個方法時可以直接通過 Dog.describe() Dog.language() 來訪問,即 物件.方法
      注意:注意這裡不能用this.name 應該用Dog.name因為Object()是一個物件,我們的Dog也是創建出來的一個物件,所以用this會是undefined,但是Dog這個describe()方法中使用this就可以,因為是用過這個Dog物件構造出來的函式

      2.同過字面量法建立物件
      var 物件={name:“小明”,age:20,sex:“男”…} 這是字面量表示法的語法 ,缺點:一次性物件,不方便修改,不利於提高效率,一般不建議使用


      優化版的建立物件,物件中的屬性都是在一個整體中,便於訪問加粗樣式

      3、通過自定義函式建立物件:就是自己定義一個函式,然後賦予它物件的思想。這個函式的名字首字母需要是大寫的
      要建立Image的新例項,必須要使用new 操作符。以這種方式呼叫建構函式實際上會經歷一下4個步驟
      (1)建立一個新物件,在記憶體中開闢一個空閒的空間
      (2)將建構函式的作用域個給新物件(因此this就指向了這個新物件)
      (3)執行建構函式中的程式碼(為這個新物件新增屬性)
      (4)返回新物件

優點:提高程式碼複用率,程式碼可以靈活呼叫,方便修改,自己傳的引數是什麼就是什麼, 既解決的重複例項化的問題又解決了物件識別的問題缺點:沒有顯示的建立物件,直接將屬性和方法賦 給了this物件,沒有return語句

        

        4、通過工廠模式建立物件

         語法:function create 物件名() 這裡我們用Object能夠根據接受的引數來構建一個包含所有必要資訊的 Object物件。可以無數次的呼叫這個函式,而每次它都會返回一個包含三個屬性一個方             法的物件。工廠模式雖然解決了建立多個相似物件的問題,但是卻沒有解決物件識別的問題(即怎樣知道一個物件的型別)