js 数组移除指定元素【函数封装】(含对象数组移除指定元素)

简介: js 数组移除指定元素【函数封装】(含对象数组移除指定元素)

普通数组移除指定元素

// 普通数组移除指定元素
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 为目标下标
目录
相关文章
|
1天前
|
JavaScript
JS 【详解】双指针排序 -- 数组合并后递增排序
JS 【详解】双指针排序 -- 数组合并后递增排序
4 0
|
1天前
|
JavaScript API 索引
JS【详解】Set 集合 (含 Set 集合和 Array 数组的区别,Set 的 API,Set 与 Array 的性能对比,Set 的应用场景)
JS【详解】Set 集合 (含 Set 集合和 Array 数组的区别,Set 的 API,Set 与 Array 的性能对比,Set 的应用场景)
6 0
|
1天前
|
JavaScript
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
2 0
|
1天前
|
JavaScript 索引
js 类数组 转 数组
js 类数组 转 数组
7 0
|
2天前
|
JavaScript
JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
|
2天前
|
JavaScript
Js,定义数组的方法,let 数组名 = [数据1,数据2,........,数据n],取值方法,数组名[x],arr[0],let sum sum = sum + arr[0],求和的写法,平均值
Js,定义数组的方法,let 数组名 = [数据1,数据2,........,数据n],取值方法,数组名[x],arr[0],let sum sum = sum + arr[0],求和的写法,平均值
|
2天前
|
JavaScript
js 简易对象转字符串后恢复为简易对象(如 ^a=$1^b=2转对象)
js 简易对象转字符串后恢复为简易对象(如 ^a=$1^b=2转对象)
7 0
|
2天前
|
JavaScript
js 高频实用函数封装汇总(持续更新)
js 高频实用函数封装汇总(持续更新)
5 0
|
3天前
|
存储 JavaScript 前端开发
|
JavaScript
js基础笔记学习247event对象3
js基础笔记学习247event对象3
52 0
js基础笔记学习247event对象3