--- tags: JS 直播班 --- # 檢核點 - 第三週 **重點觀念:** **回覆參考:** ``` ``` --- 建議: **第一題** 以下三種格式都可以,單引號或雙引號都可以 ``` obj = { key: value } ``` ``` obj.key = value ``` ``` obj['key'] = value ``` * 物件的 key 不需要戴上雙引號(那是 json 格式) * 是否有 console.log 都可以 **第二題** ```javascript= let colors = ['red', 'black', 'yellow']; colors.push('black'); console.log(colors.length); ``` **第三題** 注意:motherStatus 後面一定要加上 [0],選擇到正確的物件 ``` let motherStatus = [ { name: 'mary', age: 31, sons: ['Tom', 'Bob'] } ] //流程一 motherStatus[0].age++; //流程二 motherStatus[0].sons.push('John'); ``` **第四題** 注意:確定資料選取層級正確 ``` // 資料一 bikeStationData.data[0].StationName.Zh_tw // 資料二 bikeStationData.data[2].BikesCapacity ``` **第五題** 直接使用物件,或是外層多使用一層陣列也可以 ``` let familyPics = { mother: "Jane", father: "Bill", daughter: "Rosa", son: "Howard", dogs: ["Bobo", "Koko"] } ``` or ``` let familyPics = [ { ... 同上} ] ``` **第六題** * 一定要加上名稱和地區。結構為: ``` { title: '六角大別墅', position: '高雄市', type: [...房屋的物件] } ``` * 房屋細節的兩個物件格式需相同 * 變數命名大致上達語意即可,有疑問可以 tag 助教長詢問 **第七題** 使用一個一個加上、for、forEach 都可以: ``` let totalPrice = 0; 1. totalPrice = roomDetail.items[0].normalDayPrice + roomDetail.items[1].normalDayPrice ..... 以此類推,加總完畢 2. for (let i = 0; i < roomDetail.items.length; i ++) { totalPrice += roomDetail.items[i].normalDayPrice; } 3. roomDetail.items.forEach(function(item){ totalPrice += item.normalDayPrice; }) ``` **第八題** 1. 直接加上數字或是使用 40000 - 薪水都可以 2. 如果有同學直接寫:salaryData.staff[0].salary = 40000; 不算錯,但可提醒他用 += 的方式練習 ``` if (salaryData.staff[0].salary < 40000){ salaryData.staff[0].salary += 8000; } if(salaryData.staff[1].salary < 40000){ salaryData.staff[1].salary += 40000 - salaryData.staff[1].salary; } ``` **第九題** 從外層陣列或物件包物件的結構概念描述正確就 ok~ **第十題** ```javascript const bmiData = { overThin: { status: "過輕", color: "藍色" }, normal: { status: "正常", color: "紅色" }, overWeight: { status: "過重", color: "澄色" }, mildFat: { status: "輕度肥胖", color: "黃色" }, moderateFat: { status: "中度肥胖", color: "黑色" }, severeFat: { status: "重度肥胖", color: "綠色" } } ``` 助教新增建議: *