[ES6+] spread



spread

변수를 가지고 와서 푼다음 다시 전개하는 것 ( … 으로 표시한다)


그러니까,

const friends = [1,2,3,4];

console.log(friends);

이 경우에는 [1,2,3,4] 를 콘솔에 찍는데,

spread를 이용해서

console.log(...friends);
//1 2 3 4

찍어주면 배열이 아니라 값을 찍는다



만약 배열 두개에 있는 값만 합쳐서 다시 배열로 만들기 위해서는 어떻게 해야할까?

const friends = [1,2,3,4];
const family = ["a","b","c"];

console.log(friends + family) ? //1,2,3,4a,b,c string으로 만들어버림

console.log([friends, family]) ? //[Array(4), Array(3)] 배열안에 배열이 생겨버림

이럴때 spread 생성자를 이용하면 된다.

console.log([...friends, ...family]); 를 하면

//[1, 2, 3, 4, "a", "b", "c"] 를 찍는다


오브젝트도 똑같은 방식으로 해주면 된다




노마드코더의 ‘ES6의 정석’을 듣고 정리 =)




© 2018. by sora

Powered by sora