盒子
盒子

JavaScript数组中删除指定的元素

有这么一个需求,给一个数组中的某一个元素,不知道这个元素的索引,需要根据给定的这个元素把它从数组中删除。JavaScript中没有这样的方法,因此需要自己去实现。思路是先根据这个元素返回它在数组中的索引,然后就可以利用这个索引位置使用JavaScript的自己删除元素的函数。

这里先为数组对象定义一个方法,用于返回给定的元素在 数组中的索引,代码如下:

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;
};

接着就可以实现这个需求的方法了,代码如下:

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

这样这个remove函数就可以根据所给的元素,把它从所在的数组中删除。

支持一下
扫一扫,支持forsigner