❓문제
- 재귀함수로 factorial을 계산하는 로직 구현
- 재귀(recursion)란? 자신을 정의할 때 자기 자신을 호출하는 방법을 뜻함
const factorial = n => { };
🔓 (문제 파악) n! = n x (n-1) x (n-2) ... x 1
🔑 (해결 방안) 인자로 주어진 n과 (n-1)을 재귀적으로 곱한다. 단, 재귀 함수에서 return이 주어지지 않을 경우 함수는 무한히 계산되므로, n이 0이 되었을 때 return 값을 부여하여 재귀 함수를 종료시킨다.
const factorial = n => {
return n ? n * factorial(n - 1) : 1;
}
// n === 0 ; false