오늘은 자바스크립트의 스프레드 연산자 를 언제 사용하는지 알아보겠습니다. 자바스크립트에서 배열을 이용해 뭔가를 해보려할때 생각외로 잘 되지 않을때가 많습니다.
예를 들어 배열 안에서 가장 큰 수와 가장 작은 수를 찾아내는 것 등이 있습니다. 그냥 min함수와 max함수를 쓰면 되는 것 아닌가? 라는 생각을 하죠.
실제로 한번 해보겠습니다.
const arr = [1, 120, 50, 670]; let min = Math.min(arr); let max = Math.max(arr); console.log(min, max);
결과는 어떻게 나올까요?
결과는 Nan, Nan 이 나옵니다. 이유는 자바스크립트에서 min, max 메소드는 배열을 매개변수로 받을 수 없기 때문입니다. 숫자만 들어와야 하죠.
바로 이런 경우에 스프레드 연산자 (…)를 사용하면 배열을 사용할 수 있습니다. 스프레드 연산자 (…)는 문자 그대로 배열을 해체해서 각 개별 요소들로 만들어버리는 기능을 가집니다. (ex [1,2,3]을 1,2,3으로 배열을 해체합니다.)
이제 스프레드 연산자를 사용해보죠.
const arr = [1, 120, 50, 670]; let min = Math.min(...arr); let max = Math.max(...arr); console.log(min, max); //결과 : 1 670
위와 같이 우리가 원하는 결과가 나왔습니다.