我可以将变量赋值为数组值吗?

Can i assign variables as an array value?

本文关键字:数组 变量 赋值 我可以      更新时间:2023-09-26
    <!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",请解释为什么代码不起作用,列表编号显示出来,但没有我在提示中输入的食物

var allFood = [foodItem0,foodItem1,foodItem2];

这是完全有效的。这意味着您正在创建一个数组。

  1. 由于 for 循环中的条件,代码不起作用。

    for(x=0;x>allFood.length;x++){
    

    它应该是

    for(x=0; x < allFood.length;x++){
    
  2. 修复此问题后,您需要更改最后一个列表项的id,该列表项显示item3,您可能希望将其更改为 item2

for 循环中的"小于"符号是向后的。因此,您的循环将在不运行内部代码的情况下退出。