【发布时间】:2015-02-08 23:01:41
【问题描述】:
我的代码正在运行,但没有产生我想要的输出;我有三个清单。第一个产生所有随机数,第二个产生偶数,第三个产生奇数。一切似乎都很好,但第三个列表只生成一个奇数元素,而不是第一个列表生成的其他奇数。我该如何解决这个问题?
Javascript:
var nums = [];
var allLists = "<ul>";
var evenList = "<ul>";
var oddList = "<ul>";
for(i = 0; i < 50; i++){
nums[i] = parseInt(Math.random() * 10);
allLists += "<li>" + nums[i] + "</li>";
if(nums[i] % 2 == 0){
evenList += "<li>" + nums[i] + "</li>";
}
else{
oddList = "<li>" + nums[i] + "</li>";
}
}
allLists += "</ul>";
evenList += "</ul>";
oddList += "</ul>";
document.getElementById("div1").innerHTML = allLists;
document.getElementById("div2").innerHTML = evenList;
document.getElementById("div3").innerHTML = oddList;
HTML:
<div id="div1">
</div>
<div id="div2">
</div>
<div id="div3">
</div>
【问题讨论】:
-
你有
oddList = "<li>"(缺少+)而不是oddList += "<li>" -
将
oddList = "<li>" + nums[i] + "</li>";更改为oddList += "<li>" + nums[i] + "</li>";注意等号前面的加号。
标签: javascript arrays html list if-statement