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

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

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

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

Array.prototype.remove = function(

var index = this.indexOf(val);

if (index > -1) {

this.splice(index, 1);

}

};

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