js 删除数组中指定元素

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hyunbar/article/details/81192554

一、不直接修改数组

方法一:

function removeElement(arr, item) {
 var result=[];
    for(var i=0; i<arr.length; i++){
    if(arr[i]!=item){
        result.push(arr[i]);
    }
}
 return result;
}

方法二 :


function removeElement(arr, item) {
 var result=[];
    arr.forEach(function(i){
        if(i!=item){
            result.push(element);
        }
    });
 return result;
}

方法三:

function removeElement(arr, item) {  
    return arr.filter(function(i){  
        return i!=item;  
    })  
}  

二、直接修改数组 ,用splice

定义和用法:

 splice() 方法用于插入、删除或替换数组的元素。
这种方法会改变原始数组

语法:

array.splice(index,howmany,item1,.....,itemX)

这里写图片描述

方法一:

function remove(arr, item) {
     for(var i = 0; i < arr.length; i++){
         if(arr[i] == item){
             //从i出开始删除1个元素
             arr.splice(i,1);
             i--;
         }
     }
     return arr;
}

方法二 :


function remove(arr, item) {
    for(var i=arr.length-1;i>=0;i--)
      {
       if(arr[i]==item)
         {
           arr.splice(i,1);
          }
       }
    return arr;
}
此时不用考虑位置影响

猜你喜欢

转载自blog.csdn.net/hyunbar/article/details/81192554