현재 버전

자바스크립트 재귀함수

자바스크립트에서 재귀함수 관련 질문입니다.


안녕하세요 제가 자바스크립트로 재귀함수를 사용해  ul태그를 만들고싶습니다.

아직 재귀함수를 공부하는데 많이 부족한것같아 선생님들께 질문하려고 글을 남깁니다.

코드는 아래와 같고


 <div id="all">
 	
	 </div> 
    
    
     <script type="text/javascript">
     	function tree(n){
     		if(n==1){
     			return n;
     		}else{
     			var plusNode=document.createElement('ul');
         		plusNode.innerHTML="<li>menu</li>";
         		return document.getElementById('all').appendChild(plusNode)+tree(n-1);
         			
     			
     		}
     			
     		
     	}
     	alert(tree(8));

이렇게 사진과같이 결과값이 나왔습니다. 저는 8이라는 값을 넣어줬는데

왜  li태그가 7개 밖에 생성되는지 이해가 안가네요..


수정 이력

2020-11-20 17:06:20 에 아래 내용에서 변경 됨 #1

안녕하세요 제가 자바스크립트로 재귀함수를 사용해  ul태그를 만들고싶습니다.

아직 재귀함수를 공부하는데 많이 부족한것같아 선생님들께 질문하려고 글을 남깁니다.

코드는 아래와 같고


 <div id="all">
 	
	 </div> 
    
    
     <script type="text/javascript">
     	function tree(n){
     		if(n==1){
     			return n;
     		}else{
     			var plusNode=document.createElement('ul');
         		plusNode.innerHTML="<li>menu</li>";
         		return document.getElementById('all').appendChild(plusNode)+tree(n-1);
         			
     			
     		}
     			
     		
     	}
     	alert(tree(8));

이렇게 사진과같이 결과값이 나왔습니다. 저는 8이라는 값을 넣어줬는데

왜  li태그가 7개 밖에 생성되는지 이해가 안가네요..