재귀함수
오늘은 자기자신을 반복 호출하는 함수! 재귀함수에 대해서 알아봅시다. 이 재귀함수는 잘 사용하기만 한다면 코드가 매우 간단해진답니다.
■ 넌 뭐니?
영어로 Recursive Call이라고 하는데요. 말 그대로 반복해서 호출한다는 뜻입니다.
여기서 반복대상은 나 자신입니다.
얘는 내 함수명령문 안에서 내 함수를 호출하는 형태입니다.
■ 문법 (내용 꼭 필독!)
func recursivecall() {
recursivecall()
}
문법상 위 방식이 맞긴 하지만 이렇게 작성하고 함수를 실행하면, 아무런 제약없이 계속 자기자신을 호출하므로 컴퓨터는 과부하에 걸리게 되고 그렇게...(말잇못)
☞ 과부화 해결법 예시
function func(num){
if( num<=1 ){
document.write("함수가 실행되었습니다." + num);
} else {
document.write("함수가 실행되었습니다." + num);
func(num - 1);
}
}
func(10);
결과보기
함수가 실행되었습니다.10함수가 실행되었습니다.9함수가 실행되었습니다.8함수가 실행되었습니다.7함수가 실행되었습니다.6함수가 실행되었습니다.5함수가 실행되었습니다.4함수가 실행되었습니다.3함수가 실행되었습니다.2함수가 실행되었습니다.1function animation(){
document.write("함수가 실행되었습니다.");
requestAnimationFrame(animation);
}
animation();
결과보기
함수가 실행되었습니다.(1초마다 60번씩 실행)728x90
'JavaScript' 카테고리의 다른 글
[자바스크립트 함수] 내부함수를 알아보자 (2) | 2022.09.21 |
---|---|
[자바스크립트 함수] 콜백함수를 알아보자 (3) | 2022.09.21 |
[자바스크립트]마우스 오버 메서드 _ mouseenter 와 mouseover메서드의 차이점을 알아보자 (3) | 2022.09.05 |
[메서드] 요소 크기 메서드 (5) | 2022.09.01 |
charAt()메서드 (5) | 2022.08.22 |
댓글