### 🔍小範例大學問👊 # [<font color="#f00">JavaScript</font>] 何謂物件取值?在什麼時機上會用到?點(.)和方括號([])取值的不同之處 --- ## 1. 何謂物件取值? 用大括號 { } 包覆起來的資料,就是物件,而物件可以記錄很多不同屬性的資料。而屬性與後面的值,中間用 : 連結,每一個屬性中間用 , 分開即可。 要將物件內的資料取出使用,就是物件取值。 ## 2. 物件取值有兩種: 用點'.'或是中括號'[ ]': ```javascript= let aboutMe = { name: 'Peter Chen', height: 200, weight: 100, members: { mom: '老媽', pa: '老爸', bro: '老弟' } }; console.log(aboutMe.name); // 'Peter Chen' console.log(aboutMe['name']); // 'Peter Chen' //undefined ``` ## 3. 中括號'[ ]'的使用時機: * ### 可以以變數取值 ```javascript= let aboutMe = { name: 'Peter Chen', height: 200, weight: 100, members: { mom: '老媽', pa: '老爸', bro: '老弟' } }; let myName = 'name';//設定變數myName console.log(aboutMe.myName); // undefined console.log(aboutMe[myName]); // 'Peter Chen' ``` * ### 屬性開頭是數字時 ```javascript= let aboutMe = { name: 'Peter Chen', height: 200, weight: 100, 123: '木頭人',//屬性開頭是數字 members: { mom: '老媽', pa: '老爸', bro: '老弟' } }; console.log(aboutMe.123); // 錯誤訊息發生 console.log(aboutMe['123']); // '木頭人' ``` * ### 可以新增特殊字元 ```javascript= let aboutMe = { name: 'Peter Chen', height: 200, weight: 100, 123: '木頭人',//屬性開頭是數字 members: { mom: '老媽', pa: '老爸', bro: '老弟' } }; aboutMe['$Money'] = '1000萬'; console.log(aboutMe); /* { '123': '木頭人', name: 'Peter Chen', height: 200, weight: 100, members: { mom: '老媽', pa: '老爸', bro: '老弟' }, '$Money': '1000萬' } */ ``` --- #### 參考文章 * [JavaScript 核心篇 學習筆記](https://medium.com/@yining1204/javascript-%E6%A0%B8%E5%BF%83%E7%AF%87-%E5%AD%B8%E7%BF%92%E7%AD%86%E8%A8%98-chap-30-%E7%89%A9%E4%BB%B6%E5%8F%96%E5%80%BC-%E6%96%B0%E5%A2%9E%E8%88%87%E5%88%AA%E9%99%A4-b7a3a37a6bd7) * [JavaScript 的陣列 (Array) 與物件 (Object)](https://w3c.hexschool.com/blog/f8bbfdeb)