factorial(!) 함수 구현하기

이 문제를 쉽게 해결하려면 재귀함수를 알아야 한다.

const countdown = n => {
  if (n === 0) return;
  
  countdown(n-1);
}

재귀함수는 다음과 같이 함수 내에서 자기 자신을 호출하는 것을 말한다. 대신 이렇게 하기 위해서는 함수가 종료될 수 있는 조건을 내부에 적어줘야 한다.

이제 팩토리얼 함수를 만들어보자.

input 값부터 시작해서 1씩 감소시킨 값을 모두 곱해주면 된다. 정지 조건은 n=1일 때 이다.

const factorial = n => {
  return n > 1 ? factorial(n-1) * n : 1;
}

좋은 웹페이지 즐겨찾기