题目描述
移除数组 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;
}
本文介绍了三种使用splice方法从数组中移除特定元素的有效策略:递增遍历、递减遍历和while循环。通过实际代码示例,展示了如何避免遍历过程中因数组长度变化而引发的问题。
230

被折叠的 条评论
为什么被折叠?



