为什么我的for循环在我的任何实际输出发生之前显示“undefined”,我很难过。我声明了所有变量,并且使用Inspect Element没有显示语法错误。
<!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>
答案 0 :(得分:6)
显示未定义的字符串,因为html
为undefined
var html, s, vindex;
var html;
与var html = undefined;
将其设置为空字符串。
var html = "", s, vindex;