구조분해할당(=비구조화할당)이란 뜻으로 배열이나 객체의 속성을 해체
하여 각각의 값을
개별 변수
에 넣어주는 Javascript표현식
1. 배열 구조 분해
변수 선언 시 [대괄호]
사용
** 배열은 변수의 순서와 배열의 순서가 일치하게 대입되므로 순서
가 중요함
let arr= ["가","나","다","라"]
let [one , two, three , four] = arr
console.log(one) //'가'
console.log(two) //'나'
console.log(three) //'다'
console.log(four) //'라'
// 변수의 순서 바꾼 경우
let arr= ["가","나","다","라"]
let [two , one, four , three] = arr
console.log(one) //'나'
console.log(two) //'가'
console.log(three) //'라'
console.log(four) //'다'
2. 객체 구조 분해
변수 선언 시 {중괄호}
사용
** 객체는 변수명
이 객체의 Key
값과 같아야 할당 가능(순서는 상관 없음)
let obj = {apple:"사과",banana:"바나나",grape:"포도",melon:"메론"}
let {apple , banana, grape ,melon } = obj
console.log(apple) //'사과'
console.log(banana) //'바나나'
console.log(grape) //'포도'
console.log(melon) //'멜론'
//존재하지 않는 key을 변수명으로 사용한 경우
let obj = {apple:"사과",banana:"바나나",grape:"포도",melon:"메론"}
let {apple , banana, grape ,lemon } = obj
console.log(apple) //'사과'
console.log(banana) //'바나나'
console.log(grape) //'포도'
console.log(lemon) //undefined