Destructuring
Destructuring lets you unpack values from arrays or objects into variables.
Array Destructuring
const [a, b, c] = [1, 2, 3]
console.log(a, b, c) // 1 2 3
// Skip elements
const [first, , third] = [10, 20, 30]
console.log(first, third) // 10 30
// Default values
const [x = 0, y = 0] = [5]
console.log(x, y) // 5 0
// Swap variables
let m = 1, n = 2
;[m, n] = [n, m]
console.log(m, n) // 2 1
Object Destructuring
const person = { name: 'Alice', age: 25, city: 'Kyiv' }
const { name, age } = person
console.log(name, age) // Alice 25
// Rename
const { name: fullName } = person
console.log(fullName) // Alice
// Default value
const { country = 'Ukraine' } = person
console.log(country) // Ukraine
// Nested
const { address: { street } = {} } = person
In Function Parameters
function greet({ name, age = 0 }) {
return \`\${name} is \${age} years old\`
}
greet({ name: 'Bob', age: 30 }) // 'Bob is 30 years old'