JS 删除数组元素的几种方式

 一: 数组内置函数方法

 1.splice方法数组

   let arr=[1,2,3,4]函数

   arr.splice(1,1); //删除下标为1的元素,splice(1,1)表示从下标1处开始删除,删除长度为1,this

   for(index in arr){prototype

    console.log(arr[index]) //1,3,4对象

   }rem

  /*另外讲一下splice替换,添加数组元素*/原型

  arr.splice(1,1,5);//将下标1的元素替换为5io

  arr.splice(1,0,'tt');//在下标1增长一个元素'tt',len设置为0console

 2.delete方法function

    let arr=[1,2,3,4]

    delete arr[2];

    for(index in arr){

    console.log(arr[index]) //1,2,4,这种方法不会改变数组长度,被删除下标处内容值为                  underfined

    }

 3.slice(用于截取数组)+contact(用于链接数组)

   let arr=[1,2,3,4,5];

   console.log(arr.slice(0,2).concat(a.slice(3,arr.length)));//a.slice(0,2),返回的是1,2,a.slice(3,5)返回 4,5

二:自定义方法

 1. 

Array.prototype.remove=function(dx){ //使用Array的原型属性,在原型对象上添加一个remove方法

if(isNaN(dx)||dx>arr.length){
return false;
}
else{
for(let i=0,n=0;i<arr.length;i++){
if(this[i]!=this[dx]){
this[n++]=this[i];  //原理应该很简单吧,无非就是不与目标值相等的下标另外存放
}
}
this.length-=1;   //删除一个元素以后 数组长度天然减一咯
}
}
arr.remove(0);  //调用函数remove
for(let n=0;n<arr.length;n++){
console.log(arr[n]);
}
相关文章
相关标签/搜索