기존에는 어떤 변수에 객체의 데이터를 할당해주기 위해서 객체명.key 값을 사용해서 value의 값을 가져왔다.
const user = {
name: '철수',
age: 13,
school: '다람쥐초등학교',
createdAt: '2010-09-07',
}
const name = user.name
const age = user.age
const school = user.school
const createdAt = user.createdAt
하지만 구조분해할당을 사용하면 훨씬 간결하게 코드를 작성할 수 있다.
const {name, age, school, createdAt} = user
배열도 구조분해할당이 가능하다.
const classmates = ['철수', '영희', '훈이'];
const child1 = classmates[0];
const child2 = classmates[1];
const child3 = classmates[2];
const [child1, , child2, child3] = classmates;
배열을 구조분해할당 할 때는 객체와 달리 주의점이 있다.
먼저 객체를 구조분해할당 하게 될 경우 객체 안의 key값을 가져와 할당을 해줍니다. 다시 말해, 객체 안의 존재하는 key값의 이름으로 재할당을 해야하고 순서는 상관없이 할당된다.
이와 다르게 배열은 구조분해할당 시, 배열의 순서가 매우 중요하다.