Javascript 在数组中循环并在 .innerhtml 中输出

标签 javascript html while-loop

我是 Javascript 的新手,正在自学。我正在尝试设置一个函数,该函数将写入数组 AmericanCars 的每个元素,元素之间留有空格。

我让它工作,这样当我使用 .innerHTML=AmericanCars[Index Position] 加上不间断空格时,我可以写入数组的一个元素。现在我尝试使用 while 循环来遍历它,但我只得到“未定义”的输出。

如何让 .innerHTML 写出数组的每个元素并在它们之间留一个空格?有没有比使用 While 循环更简单的方法,或者我的 While 循环只是格式错误。

<html>
    <head>
    </head>
    <body>

        <script language="javascript" type="text/javascript">
        var AmericanCars=["Chevy", "Ford", "Dodge"];
        var JapaneseCars=["Honda", "Toyota", "Subaru"];
        var FavoriteCars=[];

        function ListAmericanCars() {

        var arraycounter = 0; 

        /* Use array counter to set the value that is displayed in innerHTML's square [] brackets */
            while (arraycounter <= AmericanCars.length) {

                document.getElementById('content').innerHTML = AmericanCars[arraycounter] + "&nbsp ";
                arraycounter++;
            }
        }
        </script>

        <p> What Are Your Favorite American Cars?  Answer: 
            <span id="content">______________
            </span>
        </p>

        <button onclick="ListAmericanCars()">
            American Cars Function
        </button>
    </body>
</html>

最佳答案

数组是从 0 开始的。将其更改为小于,否则最后一个元素将打印未定义。

while (arraycounter < AmericanCars.length) {
    ...
}

此外,您可以这样做:

document.getElementById('content').innerHTML = AmericanCars.join('&nbsp');

关于Javascript 在数组中循环并在 .innerhtml 中输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22776754/

相关文章:

javascript - 在 map 中 react 原生特定样式元素

javascript - Web 程序集 - 整数值错误

javascript - 创建 UL 列以列出所选文件和上传文件中的文件

c - 如何在 C 中一段时间​​后退出 while(1) 循环?

c# - 从 watch 或即时窗口打破无限循环

javascript - 如何将 jQuery 的 insertBefore() 函数与 HTML 的 javascript 字符串一起使用?

javascript - 无法将参数传递给 angularjs 指令

javascript - 连续更改每个其他 div 的背景颜色

html - 摆脱子菜单中的底部边框

python - 我可以通过在 Python 中使用这个新手代码运行 time.sleep() 来损坏系统吗?