删除数组中的某个元素

在之前的文章中也介绍过类似的东西,主要操作的方式是利用splice这个便利函数。

我们要删除,Arr数组中的元素b,具体做法是:

//第一步是获取b在Arr中的位置
var index = Arr.indexOf(b);
//第二步就是利用splice删除该元素
Arr.splice(b, 1);

简单点写就是:

Arr.splice(Arr.indexOf(b), 1); //这里的b可以是任意对象

注:并非所有浏览器都支持indexOf这个函数,可能你需要自己写一个遍历函数获取到需要查询元素b的索引值。

下面是我随便写的一个Array对象的扩展:

Array.prototype.index = function(obj){
    for(var i = 0, len = this.length; i < len; i++){
        if(this[i] === obj) return i;
    }
}
Array.prototype.del = function(obj){
    this.splice(this.indexOf(obj), 1);
    return this;
}

测试地址:DEMO

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-01 11:47
点赞 评论 收藏
分享
头顶尖尖的程序员:我是26届的不太懂,25届不应该是找的正式工作吗?为什么还在找实习?大四还实习的话是为了能转正的的岗位吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务