JS删除数组(对象数组)中的指定元素

 以下列举的方法,基本能够满足数组内元素的删除,如果是多层嵌套的数组,也可使用,在该方法上循坏使用

1.filter

filter:将数组中符合条件的元素保存到一个新的数组中(过滤数组中的元素)

// 对象数组
let arr = [
            {name:"张三",age:18},
            {name:"李四",age:19},
            {name:"王五",age:20}
        ]
        let list = arr.filter((val) => val.name !== '张三')
        console.log(list);

// 数组
let arr = [
            4,5,7,9
        ]
        let list = arr.filter((val) => val !== 9)
        console.log(list);

2.slice

splice:通过删除或替换现有元素或者原地添加新的元素来修改数组,并以新的数组形式返回被修改的内容

        参数1:指定修改的开始位置

        参数2:整数,表示要移除的数组元素的个数

        参数3:要添加进数组的元素,从start 位置开始。如果不指定,则 splice() 将只删除数组元素

let arr = [1,2,3,4,5]
let result = arr.splice(2,1)
console.log(result); // 返回一个数组

 3.for循坏

for循坏遍历,生成新数组,往新数组中添加除被删除元素之外的元素

indexOf:返回在数组中找到给定元素的第一个索引,如果不存在则返回-1

// 数组
let arr = [22,55,99,88,44]
        let list = []
        console.log(arr.indexOf(22));
        for(let i=0;i<arr.length;i++){
            if(i !== arr.indexOf(22)){
                list.push(arr[i])
            }
        }
        console.log(list);
// 对象数组

let arr = [
            {name:"张三",age:18},
            {name:"李四",age:19},
            {name:"王五",age:20}
        ]
        let list = []
        for(let i=0;i<arr.length;i++){
            if(arr[i].name !== '张三'){
                list.push(arr[i])
            }
        }
        console.log(list);

谢谢

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值