Study/JavaScript(Clean code)

[JavaScript][clean-code] Rest Parameters

갈푸라떼 2022. 6. 13. 12:45

* Rest Parameters

[참조 내용] https://latte1114.tistory.com/297

 

* 예시 코드

function sumTotal() {
  return Array.from(arguments).reduce(
    (acc, curr) => acc + curr,
  );
}

sumTotal(1, 2, 3, 4, 5, 6, 6);
  • arguments를 활용하여 가변인자를 취한다.

* 만약 추가적인 인자를 받고 싶은 경우에는??

- Rest parameters를 이용한다.

function sumTotal(...args) {
  return args.reduce (
    (acc, curr) => acc + curr,
  );
}

sumTotal(1, 2, 3, 4, 5, 6, 6);

 

[참고] rest parameter로 넘어온 인자는 배열로 넘어오기 때문에 Array.from을 사용안해도 바로 배열 메서드를 사용할 수 있다.


* rest parameter는 다른 매개변수와 조합할 수 있다.

function sumTotal(initValue, ...args) {
  return args.reduce (
    (acc, curr) => acc + curr,initValue
  );
}

sumTotal(100, 1, 2, 3, 4, 5, 6, 6);
  • rest parameter은 무조건 맨마지막 인자로 받아줘야한다.