未定義的物件屬性與預設值
下方有一物件,前面已經知道如果要取其值的方法,
1 | let family = { |
但無法在未定義的屬性下取得值,也就是說沒有在物件中先給予的屬性,沒有辦法在外部給值。
1 | let family = { |
如上方所示,在 family
物件中並沒有 room
這個屬性,所以也無法給予 Tim
這個屬性與值。
但如果要解決這個問題,就要先在物件中寫入其物件屬性,就可以新增其屬性值了。
1 | let family = { |
物件的參考特性
了解物件參考特性前,先來兩個範例。
傳純值
1 | let person = "提姆"; |
物件傳參考
1 | let person = { |
上方兩個看起來是很像的範例,但傳純值跟傳參考的方式是不同的。
如果將上方程式改成這樣:
1 | let person = { |
兩個物件雖然內容的屬性與值都相同,但得到的結果卻是 false,原因是這兩物件本身已經是不同的物件,並非使用同一個物件參考。
傳值
- Boolean
- Null
- Undefined
- Number
- String
- …
傳參考
- 物件(包含函式與陣列)
觀念:除了純值外,其他都可以看成物件。