배열 또는 객체에서 값을 추출에 변수에 할당

배열 구조분해할당

// 기준 배열
const numbers = [1, 2, 3, 4, 5];

const [a, b] = numbers; // 배열의 0번 인덱스부터 차례대로 할당 -> [1, 2]

const [a, , c] = numbers; // 특정 요소 건너뛰기 -> [1, 3]

const [a, ...b] = numbers; // a -> 1, b -> [2, 3, 4, 5]

객체 구조분해할당

// 기준 객체
const person = {
  name: '김철수',
  age: 30,
  city: '서울',
  job: '개발자'
};

const { name, age } = person; // person의 필드를 변수에 곧바로 할당

const { name: personName, age: personAge } = person; // 변수명을 바꿔서 할당

const { name, ...others } = person; // name: '김철수', others: { age: 30, city: '서울', job: '개발자' }

함수 파라미터 구조분해할당

const greet = ({ name, age = 25 }: {
	name: string,
	age?: number,
}) => {
		alert(`${name}님의 나이는 ${age}세입니다.`);
}