[KDT]FCFE - 4주2일 - 구조 분해 할당 & 전개 연산자

Keunyeong Lee·2021년 12월 14일
0
post-thumbnail

구조 분해 할당 ( 비구조화 할당 )

const user = { name: 'lee', age: 31, mail: 'lee@lee.com' };

const { name, age, mail, address } = user;

console.log( name ); // 'lee'
console.log( age ) ; // 31
console.log( mail ); // 'lee@lee.com'
console.log( address ); // undefined

이미 객체로 구성되어 있는 정보를 같은 속성명으로 분해하여

객체에서 필요한 값들만을 지정하여 사용할 수 있다.

const { name, age, mail, address='부산' } = user;

console.log( address ); // '부산'

기본값을 설정해 줄 수 있고

const user = { name: 'lee', age: 31, mail: 'lee@lee.com', address: '서울'};

const { name, age, mail, address='부산' } = user;

console.log( address ); // '서울'

객체에 값이 있다면 기본값을 무시하고 객체에 있는 값이 할당된다.

const { name:id, age, mail, address='부산' } = user;
console.log( name ); not defined
console.log( id ); 'lee'

할당 받을 값의 변수명을 : 을 적고 변경하여 사용할 수 있다.

전개 연산자 ( spread )

const fruits = ['banana', 'apple', 'cherry', 'orange'];

console.log(...fruits); // 'banana' 'apple' 'cherry' 'orange'

전개 연산자( spread ) 를 사용하면

배열 안에 item들을 , 로 구분하며 전개한다.

rest parameter

function toObject(a, b, ...c) {
	return {
    	a: a,
        b: b,
        c: c
    }
}

console.log(toObject(...fruits));
// {a:'banana', b:'apple', c:Array(2)}

나머지를 전부 배열로 갖게 한다.

profile
🏃🏽 동적인 개발자

0개의 댓글