題目:
移除數組 arr 中的所有值與 item 相等的元素,直接在給定的 arr 數組上進行操作,並將結果返回
輸入:
[1,2,3,4,2] ,2
輸出:
[1,3,4]
使用splice()刪除與item相同的值並把數組索引回退一個值(i--)
function removeWithoutCopy(arr, item) {
for (var i = 0; i< arr.length;i++){
if(arr[i] === item){
arr.splice(i,1);
i--;
}
}
return arr;
}
把數組看成是隊列,等於item元素直接刪除,不等於的,先push再====>>刪除。
function removeWithoutCopy(arr, item) {
var n = arr.length;
for (var i = 0; i<n;i++) {
if(arr[0] !== item){
arr.push(arr[0]);
}
arr.shift();
}
return arr;
}
function removeWithoutCopy(arr, item) {
var n = arr.length;
for (var i = 0; i<n;i++) {
if(arr[0] !== item){
arr.push(arr[0]);
}
arr.splice(0,1);
}
return arr;
}