<!doctype html>
<html lang="en">
<head>
<title>Test</title>
<meta charset="utf-8">
<script>
var foodItem0 = prompt("Enter your favorite food");
var foodItem1 = prompt("Enter your second favorite food");
var foodItem2 = prompt("Enter your third favorite food");
var allFood = [foodItem0,foodItem1,foodItem2];
function favoritefood(){
for(x=0;x>allFood.length;x++){
var id="item"+x;
var li=document.getElementById(id);
li.innerHTML=allFood[x];
}
}
window.onload=favoritefood;
</script>
</head>
<body>
<h1>Top Three Favorite Food Items</h1>
<ol>
<li id="item0"></li>
<li id="item1"></li>
<li id="item3"></li>
</ol>
</body>
</html>
如果我被允许声明数组“allfood”,请解释为什么代码不起作用,列表编号显示但不是我在提示中输入的食物
答案 0 :(得分:3)
var allFood = [foodItem0,foodItem1,foodItem2];
这完全有效。这意味着您正在创建一个数组。
由于for循环中的条件,代码不起作用。
for(x=0;x>allFood.length;x++){
应该是
for(x=0; x < allFood.length;x++){
修好后,您需要更改最后一个列表项id
,item3
,您可能需要将其更改为item2
。
答案 1 :(得分:0)
你的for循环中的“小于”符号是向后的。因此,您的循环正在退出,而无需在其中运行代码。