回覆列表
  • 1 # 使用者7864263703514

    首先,物件的定義大致如下:

    物件(object)是JavaScript的核心概念,也是最重要的資料型別。JavaScript的所有資料都可以被視為物件。

    簡單說,所謂物件,就是一種無序的資料集合,由若干個“鍵值對”(key-value)構成。

    上面程式碼中,大括號就定義了一個物件,它被賦值給變數o。這個物件內部包含一個鍵值對(又稱為“成員”),p是“鍵名”(成員的名稱),字串“Hello World”是“鍵值”(成員的值)。鍵名與鍵值之間用冒號分隔。如果物件內部包含多個鍵值對,每個鍵值對之間用逗號分隔。

    我們從兩個層次來理解。

    (1)“物件”是單個實物的抽象。

    一本書、一輛汽車、一個人都可以是“物件”,一個數據庫、一張網頁、一個與遠端伺服器的連線也可以是“物件”。當實物被抽象成“物件”,實物之間的關係就變成了“物件”之間的關係,從而就可以模擬現實情況,針對“物件”進行程式設計。

    (2)“物件”是一個容器,封裝了“屬性”(property)和“方法”(method)。

    所謂“屬性”,就是物件的狀態;所謂“方法”,就是物件的行為(完成某種任務)。比如,我們可以把動物抽象為animal物件,“屬性”記錄具體是那一種動物,“方法”表示動物的某種行為(奔跑、捕獵、休息等等)。

    其次,典型的面向物件程式語言(比如C++和Java),存在“類”(class)這樣一個概念。所謂“類”就是物件的模板,物件就是“類”的例項。JavaScript語言沒有“類”,而改用建構函式(constructor)作為物件的模板。

    前面說過,“物件”是單個實物的抽象。所以,通常需要一個模板,表示某一類實物的共同特徵,然後“物件”根據這個模板生成。

    所謂“建構函式”,就是專門用來生成“物件”的函式。它提供模板,作為物件的基本結構。一個建構函式,可以生成多個物件,這些物件都有相同的結構。

    最後,還是模糊的話,建議參考這本線上教程:

  • 中秋節和大豐收的關聯?
  • 世界四大歷史文化名城是哪四個?