JS
구조 분해 할당
개발자doc
2024. 4. 28. 18:59
목차
1. 구조 분해 할당이란?
2. 사용법
1. 구조 분해 할당이란?
- 객체의 속성을 분해하여 변수에 담는 표현식
객테의 데이터 전부가 아닌 일부만 필요로할 때 사용된다.
2. 사용문법
1) 배열분해
배열 분해는 각각의 요소를 담을 변수가 필요한데 대괄호([])안에 각 요소를 담을 변수의 이름을 지정해준다. 변수의 위치에 따라 요소 첫번째부터 순서대로 데이터가 할당되며 배열의 갯수가 요소의 갯수보다 남은 요소는 할당되지 않고 변수가 더 많으면 남은 변수에는 undefined로 초기화된다.
변수예약어 배열명 = [요소1,요소2,요소3];
변수예약어 [아이템1,아이템2,아이템] = 배열명;
ex)
const numberList = [1,2,3,4,5];
const [num1,num2,num3] = numerList;
/*
요소의 위치에 따라 num1=1, num2=2, num3=3가 각각 할당
*/
const numberList = [1,2,3];
const [num1,num2,num3,num4] = numerList;
/*
요소의 위치에 따라 num1=1, num2=2, num3=3가 각각 할당
num4는 undefined
*/
2) 객체분해
객체 분해할당은 각 속성을 가져오는데 가져오려는 속성의 이름과 완전히 동일해야 속성의 값을 가져올 수 있다. 만일 구조 분해할당 하는 변수의 이름이 객체의 속성에 없다면 변수는 undefined값을 갖게 된다.
class 클래스명{
constructor(속성값1){
this.속성 = 속성값;
}
}
변수예약어 객체명 = new 클래스명(속성값);
변수예약어 {속성} = 객체명;
ex)
class Person{
constructor(name){
this.name = name;
}
}
const person = new Person("홍길동");
//겍채의 속성 중 name을 가져옴
const {name} = person;