javascript 循环推送

标签 javascript loops push

当我尝试将元素插入 JavaScript 数组时,它不起作用。 这是我能想到的最简单的示例。 为什么这不起作用?

    <!DOCTYPE html>
    <html>
    <body>

    <script>
    var i;
    var mycars = new Array();

    for(i=1;i<=10;i++){
      mycars.push[ i.toString()+"-" ];
    }

    alert(mycars.join(""));

    </script>

    </body>
    </html>

最佳答案

push是一个函数。您可以使用 () 调用函数,而不是 []:

mycars.push( i.toString()+"-" );
// here ---^     and here ----^

您可能感到困惑的是,您可以在不使用 push 的情况下添加到数组中,只需分配给数组元素即可,即使该元素尚不存在。例如,您的循环可能如下所示:

for(i=1;i<=10;i++){
  mycars[mycars.length] = i.toString()+"-";
}

在那里,因为我引用的是数组元素 (mycars[mycars.length]),而不是调用函数,所以我使用 []

旁注:不用 var mycars = new Array();,只需编写 var mycars = [];。它做同样的事情,但更简洁并且不易产生副作用。

关于javascript 循环推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13976299/

相关文章:

javascript - 两个 jquery 插件使用相同的函数名称,我可以同时使用它们吗?

jquery如何使用for循环添加对象?

git - 你是否推送每一个提交?

ios Firebase 推送通知项目

javascript - 无法在 Internet Explorer 中嵌入 Youtube mediaelement

javascript - js如何在字符串上使用splice?

javascript - 用一个连字符替换单词之间的连续空格

python - 找到该幂函数的循环不变量

javascript - 如何迭代彼此独立的列表组

android - 实现 Android 通知应用程序的最省电方式