如何在javascript中删除数组中的特定元素

这个问题在这里已经有了答案:

  • 如何从JavaScript中的数组中删除特定的元素? 63个答案

  • var newArray = [];
    var a=["a","b","c"];
    for(var i=0;i<a.length;i++)
        if(a[i]!=="a") newArray.push(a[i]);
    

    remove = function(ary, elem) {
        var i = ary.indexOf(elem);
        if (i >= 0) ary.splice(i, 1);
        return ary;
    }
    

    前提是您的目标浏览器支持array.indexOf ,否则使用array.indexOf的后备代码。

    如果您需要删除所有相同的元素,请使用Rocket建议的filter

    removeAll = function(ary, elem) {
        return ary.filter(function(e) { return e != elem });
    }
    

    如果您使用的是现代浏览器,则可以使用.filter

    Array.prototype.remove = function(x){
        return this.filter(function(v){
            return v !== x;
        });
    };
    
    var a = ["a","b","c"];
    var b = a.remove('a');
    
    链接地址: http://www.djcxy.com/p/19011.html

    上一篇: How to remove specific element in array in javascript

    下一篇: Opposite of push();