移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回
输入例子:
removeWithoutCopy([1, 2, 2, 3, 4, 2, 2], 2)
输出例子:
[1, 3, 4]
这次是要改变数组了,那就直接用splice
function removeWithotCopy(arr,item){
for(var i=0;i<arr.length;i++){
if(arr[i]==item)
arr.splice(i,1);
i--;//一开始我没想到i自减,因为你删除元素了,所以要i--啊
}
}
如果不用考虑位置的话,可以倒着来
function removeWithoutCopy(arr, item) {
for(var i=arr.length;i>=0;i--){
if(arr[i]==item){
arr.splice(i,1);
}
}
return arr;
}