재귀 함수
함수는 함수 안에서 자기 자신을 다시 호출하는 것을 재귀함수라고 한다.
재귀 함수의 필요성과 특징에 대해 알아보도록 하자.
재귀함수는 대개 factorial(계승) 함수로 설명들을 하고 있다.
다음 코드를 보자.
JavaScript
위의 두번째 함수와 같이 자기 자신을 다시 호출하여 사용하는 것을 재귀 함수라고 한다.
또 다른 예제를 통해 사용법에 대해 좀 더 알아보자.
JavaScript
위의 예제는 객체의 key : value를 출력하는 예제이다. sports란 객체에는 또 다른 객체를 포함하고 있는 계층적인 객체구조를 이루고 있다.
하지만 여기서 soccer 객체의 soccer.meber의 값이 11이 아닌 {step : {value: 11}}의 형태인 계층적 객체를 또 포함하고 있다면 이 객체의 프로퍼티를 열거하기 위해 또 한번의 for-in문을 작성해야 한다.
그런데 이런 계층적인 객체에 맞추어 코드를 유동적으로 작성할 수는 없다. 이럴 경우에 재귀함수를 사용하여 해결할 수가 있다.
재귀함수를 사용하여 계층적인 객체 프로퍼티를 열거
JavaScript
이와 같은 처리로 객체의 프로퍼티를 전부 열거할때까지 반복합니다.
따라서 객체의 계층에 제약을 받지 않고 처리할 수가 있습니다
또 다른 예제
JavaScript
Jaehee's WebClub