다른 도우미 함수 range()의 도움을 받는 JavaScript 계승 함수를 작성해야 합니다.
범위 함수는 1에서 입력 숫자까지의 범위를 준비해야 합니다. 그런 다음 주 함수는 계승을 계산하기 위해 범위 배열에 대해 Array.prototype.reduce() 함수를 실행해야 합니다.
예시
이에 대한 코드는 -
const range = (start, end) => { const acc = []; for (var i = start; i < end; i++) { acc.push(i); }; return acc; } const factorial = n => { let factors = range(1, Math.abs(n)+1); let res = factors.reduce((acc,val) => { return acc * val; }, 1); if(n < 0){ res *= -1; }; return res; }; console.log(factorial(5));
출력
콘솔의 출력은 -
120