删除数组中的指定元素 | JavaScript

JavaScript数组默认不支持直接删除指定元素,但可以通过Set或splice方法实现。Set提供了delete方法,方便删除元素,但需注意Set只存储唯一值。若数据不适合Set,可以使用indexOf找到元素索引,再用splice删除。示例中展示了如何删除数组中的特定元素。
摘要由CSDN通过智能技术生成

JavaScript的数组中默认不支持删除指定元素的操作,如

let book_id = [1,2,3,4]
book_id.delete(4) //错误,JS数组没有该方法

因此,解决的办法有

  • 使用集合Set

ES6中新加入了集合类型Set(),因为集合本身支持add(),delete(),remove(),forEach()等操作,因此可以直接将Array()转化为Set()

let book_id = new Set([1,2,3,4])
book_id.delete(4)
console.log(book_id)  //Set { 1, 2, 3 }

但要注意到,Set()本身的限制

Set是一种无重复值的有序列表,允许对它包含的数据进行快速访问,从而增加了一个追踪离散值的更有效方式

因此,如果本身要操作的数据不符合Set()的要求,则要用到ES5原生方法

  • 使用indexOf()

其实是通过indexOf()找到要删除元素在数组中的索引,然后用splice()删除

let book_name = ['1984','动物庄园','乌合之众']
let i = book_name.indexOf('动物庄园')
book_name.splice(i,1)
console.log(book_name)  //[ '1984', '乌合之众' ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值