Javascript删除数组里的某个元素

时间:2024-03-27 10:34:26

删除array数组中的某个元素,首先需要确定需要删除元素的索引值。

?
1
2
3
4
5
6
7
var arr=[1,5,6,12,453,324];
function indexOf(val){
 for(var i = 0; i < arr.length; i++){
  if(arr[i] == val){return i;}
 }
 return -1;
}

找到相对应的索引值后返回顶部,根据索引值删除数组中该元素对应的值

?
1
2
3
4
function remove(val){
 var index = indexOf(val);
 if(index > -1){arr.splice(index,1);}
}

验证下,是否成功

?
1
remove(1);//测试OK。

需要将封装为数组原始的方法,以便以后需要使用

?
1
2
3
4
5
6
7
8
9
10
11
12
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 (val) {
 var index = this.indexOf(val);
 if(index > -1){this.splice(index,1);}
}
var temp = [1,5,6,12,453,324];
temp.remove(12);//测试OK

当然根据数组的tab切换splice()方法:向/从数组中添加/删除项目,然后返回被删除的项目。可以实现替换数组中的某个值。