∞. 기술 면접/8. 자바스크립트
07. 기술면접 - 자바스크립트 - 구조 분해 할당 (Destructuring)
THE HEYDAZE
2021. 10. 22. 14:26
공부목적으로 다른 블로그의 글을 그대로 따라치면서 작성되었습니다. 저작권 문제 시, 비공개 처리하겠습니다
개념
속성을 분해하여 원하는 속성만 변수로 담을 수 있다
객체 구조분해 (Object Destructuring)
const A = {
a: 1,
b: 2
}
const {a,b} = A
console.log(a) // 1
console.log(b) // 2
const A = {
a: 1,
b: 2
}
const {b, a} = A
console.log(a) // 1
console.log(b) // 2
const A = {
a: 1,
b: 2
}
const {c,d} = A
console.log(c) // undefined
console.log(d) // undefined
배열 구조분해 (Object Destructuring)
const arr = [1,2,3,4,5]
const [a,b] = arr
console.log(a) // 1
console.log(b) // 2
const arr = [1,2,3,4,5]
const [b,a] = arr
console.log(a) // 2
console.log(b) // 1
값이 object 와 다르게 나오는 이유는 arr 이는 인덱스 기반이고 object 는 hash map 기반이기 때문이다
let a = 1
let b = 2; // 세미콜론을 안적어주면 [a,b] 부분이 b 변수에 들어가게 되어 오류가 발생한다
// swap
[a, b] = [b, a]
console.log('a=', a) // 2
console.log('b=', b) // 1
const arr = [1,2,3,4,5]
const [a, ...b] = arr
console.log(a) // 1
console.log(b) // [2,3,4,5]