2014-02-14 2 views
0

내 실제 출력이 발생하기 전에 for 루프가 "정의되지 않음"으로 표시되는 이유에 대해 필자는 어리둥절합니다. 모든 변수가 선언되어 있고 Inspect 요소를 사용하면 구문 오류가 표시되지 않습니다. htmlundefined반복 출력 전에 '정의되지 않음'을 생성하는 루프

var html, s, vindex; 

var html;는 기본적으로 빈 문자열로 var html = undefined;

설정을 같은 일이 있기 때문에

<!DOCTYPE HTML> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
<title>Untitled Document</title> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
<script> 
    $(function(){ 
    "use strict"; 
     var html, s, vindex; 
     var v = ['alpha::one::uno', 'beta::two::dos', 'gamma::three::tres']; 
     for (vindex = 0; vindex < v.length; vindex++) { 

      s = v[vindex].split('::'); 
      html += '<div class="inline ' + s[0] + '">\n'; 
      html += '<h4>' + s[1] + '</h4>'; 
      html += '<a href="javascript://" class="link">' + s[2] + '</a></div>'; 
     } 
     $("div").append(html); 
    }); 
</script> 
</head> 

<body> 
<div></div> 
</body> 
</html> 

http://jsfiddle.net/a5b6C/1/

+2

검사 요소를 사용하면 DOM을 탐색하고 조작 할 수 있습니다. JavaScript 구문 오류와 아무 관련이 없습니다. JavaScript 콘솔에 대해 생각하고 있습니다. – greenie2600

+0

그 말이 맞습니다. –

답변

6

정의되지 않은 문자열이 표시됩니다.

+0

실례합니다. 이마를 때리는 동안. –

관련 문제