구조분해할당

·2022년 7월 8일
0

구조 분해 할당 구문(=비구조화할당)은 배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 표현식이다. 객체로 묶지 않고 나만의 변수로 만들 때 사용하다.
쉽게 말해 구조 분해 할당은 변수를 찢는다...

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

다음과 같이 user 객체에 하나하나 변수명을 재할당한 부분과 구조분해할당을 사용해 변수를 재할당한 부분이다. 한 눈에 보아도 반복되는 변수 선언을 줄여 주어 좀 더 간결한 코드를 작성할 수 있다.

const classmates = ['철수', '영희', '훈이'];

const child1 = classmates[0];
const child2 = classmates[1];
const child3 = classmates[2];

// 구조분해할당을 이용해
// child1엔 arr[0]
// child2엔 arr[1]
// child3엔 arr[2]을 할당하였습니다.
const [child1, , child2, child3] = classmates;

이번에는 classmates 배열을 구조분해할당 해 보았는데 여러 번 재할당해야 하는 변수 선언 부분이 한 줄로 정리되었다.

user 객체 구조분해할당과 classmates 배열을 구조분해할당 해 봤을 때 서로 다른 주의점을 발견할 수 있다.

객체를 구조분해할당 하게 될 경우 객체 안의 key값을 가져와 할당을 해 준다. 객체 안의 존재하는 key값의 이름으로 재할당을 해야 하고 순서는 상관없이 할당된다.

이와 다르게 배열은 구조분해할당 할 때 배열의 순서가 매우 중요하다.

객체에서 객체를 뽑을 때에는 {}를 사용한다. 배열에서 배열을 뽑을 때는 []를 사용한다

profile
파워블로거입니다 주인이 힘이 센 건 아니고 그냥 하고 싶습니다

0개의 댓글