JavaScript 数组常用的方法(删除数组中的某个值)二

删除数组中的某个值

  • splice() 方法:该方法可用于删除数组中的一项或多项,并返回删除的项。splice() 方法接受两个参数,第一个参数是要删除的起始位置,第二个参数是要删除的项数。

注意: splice() 方法会修改原始数组,如果你不想修改原始数组,可以先复制一份数组再进行操作。

let arr = [1, 2, 3, 4, 5];
arr.splice(2, 1); // 删除 arr 中索引为 2 的项
console.log(arr); // [1, 2, 4, 5]

arr.splice(1, 2); // 删除 arr 中索引为 1 和 2 的两项
console.log(arr); // [1, 5]
  • delete 关键字:该关键字可用于删除数组中指定位置的项,但不会改变数组的长度,而是将被删除的项替换为 undefined。
let arr = [1, 2, 3, 4, 5];
delete arr[2]; // 删除 arr 中索引为 2 的项
console.log(arr); // [1, 2, undefined, 4, 5]
  • filter() 方法:该方法可用于返回一个新数组,包含符合条件的项。可以设置一个条件函数来过滤数组中不需要的项。
let arr = [1, 2, 3, 4, 5];
arr = arr.filter(item => item !== 3); // 删除 arr 中值为 3 的项
console.log(arr); // [1, 2, 4, 5]
  • 使用 indexOf() 方法和 splice() 方法:可以使用 indexOf() 方法找到目标值的索引,然后使用 splice() 方法删除该索引处的元素。
let arr = [1, 2, 3, 4, 5];
let targetValue = 3;

let index = arr.indexOf(targetValue);
if (index !== -1) {
  arr.splice(index, 1);
}

console.log(arr);  // 输出 [1, 2, 4, 5]
  • 使用 reduce() 方法:reduce() 方法通过遍历数组的每个元素,并将其简化为单个值。可以使用 reduce() 方法过滤掉目标值,从而删除目标值
let arr = [1, 2, 3, 4, 5];
let targetValue = 3;

arr = arr.reduce((acc, item) => {
  if (item !== targetValue) {
    acc.push(item);
  }
  return acc;
}, []);

console.log(arr);  // 输出 [1, 2, 4, 5]

  • pop() 或 shift() 方法:这两种方法分别用于删除数组中的最后一项或第一项,并返回被删除的项。
let arr = [1, 2, 3, 4, 5];
arr.pop(); // 删除 arr 中的最后一项
console.log(arr); // [1, 2, 3, 4]

arr.shift(); // 删除 arr 中的第一项
console.log(arr); // [2, 3, 4]

你可能感兴趣的:(javascript,前端)