js数组是js部分非常重要的知识,有时我们有这么个需求js数组删除指定元素,先定义一个函数来获取删除指定元素索引值,然后用js数组删除的方法,来删除指定元素即可,就两步不难,很简单。
1、JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,也就是索引值,代码如下:
Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i ) { if (this[i] == val) return i; } return -1; };
2、使用通过得到这个元素的索引,使用js数组自己固有的函数去删除这个元素,代码如下:
Array.prototype.remove = function(val) { var index = this.indexOf(val); if (index > -1) { this.splice(index, 1); } };
这样就构造了这样一个js数组删除函数
3、案例:要删除如下myCase数组中的 'cd':
var myCase=new Array("abk","djp","dcg","cd");
就可以直接使用了:
myCase.remove('cd');
4、最后
验证一下,js数组删除指定元素是否成功:
console.log(myCase[3]);
我们可以在控制台看到 undefined未定义,说明数组的第四项已经删除了。
5、案例完整版代码:
<script type="text/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(val) { var index = this.indexOf(val); if (index > -1) { this.splice(index, 1); } }; var myCase=new Array("abk","djp","dcg","cd"); myCase.remove('cd'); console.log(myCase[3]); //打印出结果:undefined </script>