# 🏅 Day 09 - 陣列與物件操作(2) ## 題目 延續 Day 08 內容,繼續練習陣列與物件操作。 以下題目請合併為一份 CodePen 繳交。 問題一 --- 以下是製作麵包的食譜,請新增一個名為 breadRecipe 的物件,並依照以下要求設定屬性: 1. 新增一個名為 ingredients 的屬性,其值為一個陣列,包含 "高筋麵包粉"、" 牛奶"、"酵母"、"糖"、"鹽"、"奶油"。 2. 新增一個名為 bakeTime 的屬性,其值為 30。 3. 新增一個名為 difficulty 的屬性,其值為 "簡單"。 4. 新增一個名為 seasoning 的屬性,其值為一個物件,包含: - 屬性名稱: sugar - 值:"22g" - 屬性名稱: salt - 值:"10g" - 屬性名稱: pepper - 值:"10g" ```javascript= let breadRecipe = { /* 程式碼撰寫處 */ }; ``` 問題二 --- 在物件內新增、修改、取得屬性的方法有以下兩種: 1. 點記法 (Dot notation) ```javascript= let obj = {}; obj.key = "value"; // 新增或修改 console.log(obj.key); // 取得 ``` 2. 括弧記法 (Bracket notation) ```javascript= let obj = {}; // 當屬性的值帶有小數點、空格或是數字時可以使用,記得要加上引號 (單引號或雙引號皆可) obj['k e y'] = "value"; // 新增或修改 console.log(obj['key']); // 取得 ``` 請觀看下方程式碼,依照註解敘述完成程式碼(補上 `...` 的部分): ```javascript= let weather = { country: "高雄", "PM2.5": 35, isSunny: false, rainingRegion: ['鼓山', '鹽埕', '旗津'], rainFall: { 鼓山: 400, 鹽埕: 300, } } // 取得 country 的值,並使用 console.log 印出 console.log(...); // 取得 "PM2.5" 的值,並使用 console.log 印出 console.log(...); // 取得 isSunny 的值,並使用 console.log 印出 console.log(...); // 取得 rainingRegion 陣列的第一個值 '鼓山',並使用 console.log 印出 console.log(...); // 在 rainFall 新增一個屬性名為「旗津」、設定值為 200,並,並使用 console.log 印出 rainFall 的值 ... console.log(rainFall); ``` <!-- 解答: 問題一 ``` let breadRecipe = { ingredients: ["高筋麵包粉", "牛奶", "酵母", "糖", "鹽", "奶油"], bakeTime: 30, difficulty: "簡單", seasoning: { sugar: "22g", salt: "10g", pepper: "10g" } }; ``` 問題二 // 取得 country 的值 console.log(weather.country); // 方法一 console.log(weather["country"]); // 方法二 // 取得 "PM2.5" 的值 console.log(weather["PM2.5"]); // 取得 isSunny 的值 console.log(weather.isSunny); // 方法一 console.log(weather["isSunny"]); // 方法二 // 取得 rainingRegion 陣列的第一個值 '鼓山' console.log(weather.rainingRegion[0]); // 在 rainFall 新增一個屬性名為「旗津」、設定值為 200,並輸出結果 weather.rainFall.旗津 = 200; // 方法一 console.log(weather.rainFall); weather["rainFall"]["旗津"] = 200; // 方法二 console.log(weather["rainFall"]); -->