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

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

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

所以,解决的办法有code

  • 使用集合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()自己的限制ip

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

所以,若是自己要操做的数据不符合Set()的要求,则要用到ES5原生方法console

  • 使用indexOf()

实际上是经过indexOf()找到要删除元素在数组中的索引,而后用splice()删除方法

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

搞定!数据

相关文章
相关标签/搜索