# Destructuring Assignment 解構賦值 解構賦值(Destructuring Assignment)是 JavaScript 中一種強大且方便的特性,它允許你從陣列或物件中提取值並將它們賦給變數。這樣可以讓你更容易地訪問和操作這些值,並以更簡潔的方式進行賦值。 解構賦值有兩種主要形式:陣列解構和物件解構。 ## 陣列解構 陣列解構允許你按照陣列中的位置順序來提取值,並將它們賦給變數。以下是一個簡單的示例: ``` const numbers = [1, 2, 3, 4, 5]; const [first, second, third] = numbers; console.log(first); // 1 console.log(second); // 2 console.log(third); // 3 ``` 在這個示例中,我們將 numbers 陣列中的值解構並賦給 first、second 和 third 這三個變數。這使得我們可以輕鬆地訪問陣列中的特定元素。 ## 物件解構 物件解構允許你根據物件的屬性名稱來提取值並賦給變數。以下是一個示例: ``` const person = { firstName: 'John', lastName: 'Doe', age: 30, }; const { firstName, lastName, age } = person; console.log(firstName); // 'John' console.log(lastName); // 'Doe' console.log(age); // 30 ``` 在這個示例中,我們從 person 物件中解構並賦值了 firstName、lastName 和 age 這三個變數。 ## 預設值 解構賦值還支援預設值,允許你在提取值時指定預設值,以防止變數未定義。例如: ``` const numbers = [1]; const [first = 0, second = 2] = numbers; console.log(first); // 1 console.log(second); // 2 ``` 在這個示例中,我們使用了預設值,所以即使 numbers 陣列中只有一個元素,我們仍然可以為 second 提供一個預設值,以防止變數未定義。