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/

相关文章:

javascript - 如何制作正确的 Javascript 正则表达式?

c++ - 我需要声明一个包含整数 vector 的 4x4 矩阵

arrays - Julia 的负/补索引,如 R

javascript - jquery,属性选择器,获取当前属性值

javascript - 通过输入法给全局变量赋值

javascript - 从数组数组中获取最小数组

javascript - 如何设置 x 轴标签的宽度?

javascript - 为什么我不能将这些附加数据推送到我的数组中?

c++ - 使用新数组创建而不声明大小

c++ - 如何在不创建实例的情况下获取类的方法成员的类型?