基于JavaScript实现移除(删除)数组中指定元素

2019-12-17,

在Array对象中有给定的函数可以删除数组中指定的元素,虽然非常好用,但是总感觉看不到摸不着的比较别扭,下面就分享一个自定义的删除数组指定索引值元素的函数,希望给大家一个全新的思路。

代码实例如下:

var array=[]; 
array[0]="北冥有鱼一"; 
array[1]="北冥有鱼二"; 
array[2]="北冥有鱼三"; 
array[3]="北冥有鱼四"; 
array[4]="北冥有鱼五"; 
function remove(array,index)
{ 
 if(index<=(array.length-1))
 { 
  for(var i=index;i<array.length;i++)
  { 
   array[i]=array[i+1]; 
  } 
 }
 else
 { 
  throw new Error('超出最大索引!'); 
 } 
 array.length=array.length-1; 
 return array; 
} 
document.write(remove(array,2)); 

以上代码中,声明一个remove()函数,此函数具有两个参数,第一个参数是数组对象,第二个参数是要删除数组元素的索引值,所以上面的代码能够删除数组中的第三个元素,并输出删除元素户的数组。实现的原理也非常的简单,做一下简单的介绍:

remove()函数首先判断传入的索引值是否大约数组的最大索引值array.length-1,如果大于则抛出错误,否则的话则将使用for循环从索引值i开始进行遍历,将索引值为i的数组值设置为低i+1项的,依次类推,原理大体如此,如有任何问题可以跟帖留言。

ps:js删除数组指定元素

var a = new Array("a","b","cc","d3");
//删除a数组的cc元素
//jQuery.inArray()函数用于在数组中搜索指定的值,并返回其索引值。如果数组中不存在该值,则返回 -1。
该函数属于全局jQuery对象。 jquery 1.2中添加的该静态方法
var index = $.inArray("cc",a);
if(index>=0){
//arrayObject.splice(index,howmany,item1,.....,itemX)
//参数  描述
//index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
//howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
//item1, ..., itemX 可选。向数组添加的新项目。
 a.splice(index,1);
 alert(a.toString());
}else{
 alert("error");
 return false;
}

您可能感兴趣的文章:

  • js删除数组元素、清空数组的简单方法(必看)
  • JS删除数组里的某个元素方法
  • JavaScript从数组中删除指定值元素的方法
  • 体验js中splice()的强大(插入、删除或替换数组的元素)
  • js删除Array数组中指定元素的两种方法
  • Javascript根据指定下标或对象删除数组元素
  • 解析javascript 数组以及json元素的添加删除
  • JavaScript数组Array对象增加和删除元素方法总结
  • js在数组中删除重复的元素自保留一个(两种实现思路)
  • javascript删除数组元素的七个方法示例

《基于JavaScript实现移除(删除)数组中指定元素.doc》

下载本文的Word格式文档,以方便收藏与打印。