javascript - 使用 JavaScript 从数组中删除零值

标签 javascript arrays

我有一个名为“ids”的数组和一些值,例如 ['0','567','956','0','34']。现在我需要从这个数组中删除“0”值。 ids.remove ("0"); 不工作。

最佳答案

这是一个函数,它将删除具有特定值的数组元素,当两个连续元素具有相同的值时该函数不会失败:

function removeElementsWithValue(arr, val) {
    var i = arr.length;
    while (i--) {
        if (arr[i] === val) {
            arr.splice(i, 1);
        }
    }
    return arr;
}

var a = [1, 0, 0, 1];
removeElementsWithValue(a, 0);
console.log(a); // [1, 1]

在大多数浏览器中(IE <= 8 除外),您可以使用 filter() Array 对象的方法,但请注意,这确实会返回一个新数组:

a = a.filter(function(val) {
    return val !== 0;
});

关于javascript - 使用 JavaScript 从数组中删除零值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5817756/

相关文章:

php - 合并两个不同维度的数组 PHP

javascript - QtWebEngine: "Not allowed to load local resource"for iframe,如何禁用网络安全?

javascript - 扩展 $resource 对象从 Factory 中移除原型(prototype)

ios - 在swift中按字母顺序对数组进行排序

c# 接口(interface)实现 - 为什么不构建?

c - 错误的值 - 将大字符分解为 int 数组

javascript - 如何访问 csv 文件的一行来填充我的 d3.js 图表?

javascript - 如何在条形图的中间/中心对齐线条标记 - Highcharts

javascript - 检测屏幕分辨率以加载替代 CSS 是个好主意吗?

c# - 尝试在 C# 中对数组进行排序时出现编译错误