❓spread operator 란?

… 이라는 마침표 3개를 찍는것이 spread operator 입니다.

JS ES6 문법에 추가되었으며 괄호를 없애주는 역할을 하는 연산자 입니다.

const arr = ['hello', 'world'];

console.log(arr); // ['hello', 'world']

console.log(...arr); // 'hello', 'world'

위 코드처럼 배열 arr 에 spread operator를 사용하면 배열의 괄호를 없애주는 역할을 합니다.

또한 문자열에도 사용을 할수 있습니다.

const name = 'sanghoon';

console.log(...name); // 's','a','n','g','h' ...

위와같은 형태로 문자열에서 사용하면 문자열의 글자 하나하나씩을 쪼개주는 역할을 합니다.

이것이 가능한 이유는 문자열에도 배열(array)와 유사하기 때문입니다. name[0]을 콘솔로 찍어보면

‘s’가 출력되는것을 알수있는데 이처럼 문자열도 배열처럼 대괄호가 쳐져있는 듯이 설계가 되있습니다.

*실제로 배열처럼 되있는건 아닙니다!

😗이러한 spread operator를 어디서 사용할까?