함수 파라미터에서의 rest(params)

Rest 파라미터

Rest 파라미터 구문은 정해지지 않은 수(an indefinite number, 부정수) 인수를 배열로 나타낼 수 있게 합니다.

function sum (a,b,c,d,e,f,g) {
  return a+b+c+d+e+f+g
}
console.log(sum(1,2,3,4,5,6,7))

이런 상황에서 결과는

//결과)
28

만약에 함수를 사용하는 쪽에서 인자를 한개라도 없다

console.log(sum(1,2,3,4,5,6,))

결과는 아래와 같다.

//결과)
NAN 

이것을 해결하기 위해서는 함수 파라미터에서에 값을 Rest(배열형태)로 받는것 입니다. '이 자리에 오는 모든 파라미터를 [ ] 중괄호로 감싸준 파라미터” 라는 뜻입니다.

function sum(...params) {  //Rest
  console.log(params);
  return params.reduce((acc, current) => acc + current, 0);
}
console.log(sum(1, 2, 3, 4, 5, 6));
//결과)
[1, 2, 3, 4, 5, 6]
21

Last updated