--- tags: JavaScript 實戰班, Day13 --- # 設計魔劍三組 ## 6/24:Day 13 小美家無論是外觀或內部擺設都是一致的簡潔,如果一張椅子就足夠使用,家中絕不會出現第二張椅子,所以東西的數量都是剛剛好的狀態。看起來小美一個人在這邊住了一段時間,但小明的加入好像又剛剛好讓房子內有了第二份一樣,有了第二張椅子、第二張床、第二間房間、甚至是第二份餐點。 白吃白住的小明也常常感到疑惑,採買的食材明明只有一人份,小美卻能生出第二人份的餐點。這天,小明決定偷偷的看小美做了什麼事,讓小明也能一起享受這份美食。 小美將處理的食材細心排成一列,接下來列的另一個空間排好了牌子,碰的一聲!食材就變成了兩份。 小明!! 小美:不用偷偷看,這也是 ES6 的技巧 小明:你怎麼還沒教我 小美:因為一般人學會,會無視等價交換的法則 小明:那餐點一份變兩份,算等價交換嗎? 小美:不算 小明:...,那可以教我了嗎? 小美:可以 參考: - 解構文章:[https://wcc723.github.io/javascript/2017/12/25/javascript-destructuring/](https://wcc723.github.io/javascript/2017/12/25/javascript-destructuring/) - 解構 MDN:[https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment](https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment) 任務: - 依據提示將以下程式碼用解構方式達成目標 ```js // 請使用解構組合使 arr2 變成為 [1, 2, 3, 4, 5, 6] 的結果 var arr = [1, 2, 3]; var arr2 = [?, 4, 5, 6]; // [1, 2, 3, 4, 5, 6] console.log(arr2); // 請使用解構組合以下兩個陣列為 [1, 2, 3, 4, 5, 6] 的結果 var nums1 = [1, 2, 3]; var nums2 = [4, 5, 6]; var nums3 = ... console.log(nums3); // 請使用解構,取出 name 及 age 的變數 const person = { name: '小明', age: 16 } // 請使用解構,將以下陣列分別取出為獨立變數 Ming, Auntie, Jay, Mei var people = ['小明', '漂亮阿姨', '杰倫', '小美']; ``` --- ### Ryan ```javascript= var arr = [1, 2, 3]; var arr2 = [...arr, 4, 5, 6]; // [1, 2, 3, 4, 5, 6] console.log(arr2); var nums1 = [1, 2, 3]; var nums2 = [4, 5, 6]; var nums3 = [...nums1,...nums2] console.log(nums3); // 請使用解構,取出 name 及 age 的變數 let {name, age} = person; console.log(name, age); // 請使用解構,將以下陣列分別取出為獨立變數 Ming, Auntie, Jay, Mei var people = ['小明', '漂亮阿姨', '杰倫', '小美']; let [Ming, Auntie, Jay, Mei] = people; console.log(Ming, Auntie, Jay, Mei); ``` > 助教回覆:作業做的很好哦,解構的很正確 :+1: > --- ### ClareDes. ```javascript // 請使用解構組合使 arr2 變成為 [1, 2, 3, 4, 5, 6] 的結果 var arr = [1, 2, 3]; var arr2 = [...arr, 4, 5, 6]; // [1, 2, 3, 4, 5, 6] console.log(arr2); // 請使用解構組合以下兩個陣列為 [1, 2, 3, 4, 5, 6] 的結果 var nums1 = [1, 2, 3]; var nums2 = [4, 5, 6]; var nums3 = [...nums1,...nums2 ] console.log(nums3); // 請使用解構,取出 name 及 age 的變數 const person = { name: '小明', age: 16 } let {name, age } = person console.log(name,age); // 請使用解構,將以下陣列分別取出為獨立變數 Ming, Auntie, Jay, Mei var people = ['小明', '漂亮阿姨', '杰倫', '小美']; let [Ming, Auntie, Jay, Mei] = people; console.log(Ming,Auntie,Jay,Mei); ``` > 助教回覆:作業做的很好哦,解構的很正確 :+1: > --- ### Yoyo ```javascript // 1 var arr = [1, 2, 3]; arr2 = [...arr, 4, 5, 6]; console.log(arr2); // 2 var nums1 = [1, 2, 3]; var nums2 = [4, 5, 6]; var nums3 = [...nums1, ...nums2]; console.log(nums3); // 3 const person = { name: '小明', age: 16 } let {name,age} = person; console.log(name,age); // 4 var people = ['小明', '漂亮阿姨', '杰倫', '小美']; let [Ming,Auntie,Jay,Mei]=people; console.log(Ming,Auntie,Jay,Mei); ``` > 助教回覆: