javascript - 从数组中查找并删除元素

原文 标签 javascript arrays

如果我有一个 javascript 数字数组

[1, 2, 5, 7, 5, 4, 7, 9, 2, 4, 1]

我想搜索该数组并删除一个特定的数字,例如 4 给我
[1, 2, 5, 7, 5, 7, 9, 2, 1]

最好的方法是什么

我在想它可能看起来像
for(var i = 0; i < myarray.length; i++) {
    if(myarray[i] == 4) {
        myarray.remove(i)
    }
}

但是没有remove数组的函数。此外,如果我从数组中删除一个元素,它会弄乱我的 i除非我改正。

最佳答案

您可以使用 .splice()从数组中删除一个或多个项目,如果从数组的后到前进行迭代,则删除项目时索引不会困惑。

var arr = [1, 2, 5, 7, 5, 4, 7, 9, 2, 4, 1];
for (var i = arr.length - 1; i >= 0; i--) {
    if (arr[i] == 4) {
        arr.splice(i, 1);
    }
}

关于javascript - 从数组中查找并删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18621612/

相关文章:

java - 如何打印出存储在数组中的对象的实例

c - 动态矩阵作为函数的静态参数

c# - 从WatiN中选择,不更新模型 View 模型

javascript - 单击图像后如何创建下拉菜单? [ bootstrap /Angular ]

javascript - 逐步调整宽度:这是出于美学还是技术原因?

javascript - 在MS Ajax中将数字格式设置为电话号码

javascript - 咕ug的丑陋步骤失败

jquery - jQuery Sum数组

javascript - 删除数组值(如果已存在)

c++ - 如何允许用户输入数组索引以及数组的值?