---
# System prepended metadata

title: 設計魔劍三組
tags: [JavaScript 實戰班, ' Day13']

---

---
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);
```

> 助教回覆：