普通数组移除指定元素
// 普通数组移除指定元素 function removeItem(arr, item) { let targetIndex = arr.findIndex((itemTemp) => itemTemp === item); if (targetIndex !== -1) { arr.splice(targetIndex, 1); } }
测试
let list = [3, 5, 2, 1, 6]; // 删除数组中的 2 removeItem(list, 2); // list变为 [3, 5, 1, 6] console.log(list);
对象数组移除指定元素
// 对象数组移除指定对象 function removeObjItem(arr, prop, value) { let targetIndex = arr.findIndex((itemTemp) => itemTemp[prop] === value); if (targetIndex !== -1) { arr.splice(targetIndex, 1); } }
测试
let objList = [ { age: 10, }, { age: 20, }, { age: 30, }, ]; removeObjItem(objList, "age", 20); // 得到 [ { age: 10 }, { age: 30 } ] console.log(objList);
移除数组的第一个元素
arr 为数组的变量名称
arr.shift() // 返回被删除的元素
移除数组的最后一个元素
arr 为数组的变量名称
arr.pop() // 返回被删除的元素
移除数组指定下标的元素
arr 为数组的变量名称
arr.splice(index,1)
删除数组指定下标的元素
数组长度不变,只是目标下标对应的元素变为 undefined
delete arr[index]
- arr 为数组的变量名称
- index 为目标下标