天天看點

移除數組中元素(直接改變原數組)

題目描述

移除數組 arr 中的所有值與 item 相等的元素,直接在給定的 arr 數組上進行操作,并将結果傳回

splice,遞增周遊

function removeWithoutCopy(arr, item) {
    var length = arr.length
    for(var i = 0; i < length ; i++){
        if(arr[i] == item){
            arr.splice(i,1)
            i --;
        }
        
    }
    return arr
}
           

splice,遞減周遊,不用考慮數組坐标問題

function removeWithoutCopy(arr, item) {
    var length = arr.length
    for(var i = length ; i  >= 0; i--){
        if(arr[i] == item){
            arr.splice(i,1)
        }
        
    }
    return arr
}
           

splice, while循環

function removeWithoutCopy(arr,item){
    while(arr.indexOf(item) != -1){
        arr.splice(arr.indexOf(item),1);
    }
    return arr;
}
           
js