마틴과 드래곤
- 종료 조건까지 반복적으로 수행
- 자기 자신을 호출하는 함수가 재귀함수.
- ex) JSON.parse / JSON.stringify / document.getelementById (DOM traversal)
- Object traversal
call stack
- like 종이 더미
- return keyword or 반환할 문 없을 시 컴파일러 맨 위 함수 제거
- 쌓이는 함수를 차례대로 맨 위로 배치
- 함수 호출 → call stack 꼭대기에 추가 → 제거
- 재귀 함수는 동일한 함수를 새롭게 call stack에 추가 (자기 자신을 계혹 호출)