2019年1月17日 星期四

【Ch6物件】 物件是什麼?特性(Property)屬性(Attribute)?物件的來源?


▌物件是什麼

  • 物件是JS的「基礎型別」之一,但是屬於「合成值」
  • 物件是「特性」(Property)的無序集合
  • 每個特性(Property)擁有 名&值 (String-Value)
  • 物件是透過「參考」來操作
var y=x
y可以得到參考值
  • 名是字串,值可以是任何基礎型別
    JS的基礎型別包含:number, string, null, undefined, object

▌特性(Property)

每個物件可以繼承至其他物件的特性(被繼承的物件被稱為Prototype)
物件的特性:
  • 具有名稱(Name)和值(Value)
  • Name可以是是任何字串,甚至是空字串,但Name不能是一樣
  • 值可以是任何基礎型別
var book={   //這個obj擁有2個Property
author:"Nissen",
age:21
}

▌ 屬性(Attribute)

物件有三種屬性:
  • Prototype
  • Class
  • Extensible

▌來源

根據物件的來源,可以把物件分成三種類型
  • Native Object(原生物件):Array、函式、日期、正則表達
  • Host Object(環境物件):瀏覽器提供的
  • User-defined Object(自創物件)
根據屬性的來源,可以把屬性分成三種類型
  • Own Property(自有屬性)
  • Inherent Property(繼承屬性):從原型繼承來的屬性

▌物件可以做的操作

創建
設定
查詢
刪除
測試
列舉

沒有留言:

張貼留言

【JavaScript】用物件Mapping的方法

If的寫法 我們希望當變數是a時就回傳1,變數是b就回傳2,變數是c就會回傳3,一般寫法就是用if,但是這樣會很冗 ​ // IF style var word if(word == 'a'){ word = 1 } else if...