2023-08-31 04:30:17
在 JavaScript 中,删除数组元素有多种方法,以下是 7 种常见且实用的方法总结:
1. splice() 方法功能:直接修改原数组,可删除、插入或替换元素。语法:array.splice(start, deleteCount, ...items)示例:
let arr = [1, 2, 3, 4, 5];arr.splice(2, 1); // 从索引 2 删除 1 个元素console.log(arr); // [1, 2, 4, 5]2. pop() 方法功能:删除并返回数组的最后一个元素。语法:array.pop()示例:
let arr = [1, 2, 3, 4, 5];let last = arr.pop();console.log(arr); // [1, 2, 3, 4]console.log(last); // 53. shift() 方法功能:删除并返回数组的第一个元素。语法:array.shift()示例:
let arr = [1, 2, 3, 4, 5];let first = arr.shift();console.log(arr); // [2, 3, 4, 5]console.log(first); // 14. filter() 方法功能:创建新数组,过滤掉不符合条件的元素(不修改原数组)。语法:array.filter(callback)示例:
let arr = [1, 2, 3, 4, 5];let newArr = arr.filter(item => item !== 3);console.log(newArr); // [1, 2, 4, 5]5. delete 操作符功能:删除指定索引的元素,但保留数组长度(被删除位置变为 undefined)。语法:delete array[index]示例:
let arr = [1, 2, 3, 4, 5];delete arr[2];console.log(arr); // [1, 2, undefined, 4, 5]6. slice() + 拼接功能:通过截取数组片段并拼接,间接“排除”某些元素(生成新数组)。语法:array.slice(start, end)示例:
let arr = [1, 2, 3, 4, 5];let newArr = arr.slice(0, 2).concat(arr.slice(3));console.log(newArr); // [1, 2, 4, 5]7. flat() + 其他方法功能:展开嵌套数组后,再结合其他方法(如 filter())删除元素。语法:array.flat(depth)示例:
let arr = [1, [2, 3], 4, 5];let flatArr = arr.flat().filter(item => item !== 3);console.log(flatArr); // [1, 2, 4, 5]方法选择建议根据具体场景(如是否需保留原数组、删除位置是否固定等),选择最适合的方法即可。