Js数组里删除指定的元素(不是指定的位置)

之前一直是做后端的,从来也没有写过js,但是却一直想学学,也只是基于兴趣而已!现在到了这个公司,确实大量的写js。但也一直都是没有系统的去看过js!都是搞什么查什么!
最近要解决一个问题,但是用到了js的数组,知道了元素要去删除这个数组中的这个指定的元素。网上找到了一些解决办法,在这里做个笔记记下来:
首先可以给js的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为:

1
2
3
4
5
6
Array.prototype.indexOf = function(val) {              
for (var i = 0; i < this.length; i++) {
if (this[i] == val) return i;
}
return -1;
};

然后使用通过得到这个元素的索引,使用js数组自己固有的函数去删除这个元素:
代码为:

1
2
3
4
5
6
Array.prototype.remove = function(val) {  
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
};

这样就构造了这样一个函数,比如我有有一个数组:

1
var emp = ['abs','dsf','sdf','fd'];

假如我们要删除其中的fd,就可以使用:

1
emp.remove('fd');

转载自 http://my.oschina.net/zh119893/blog/265964