刪除數組中的指定元素 | 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', '烏合之衆' ]

搞定!數據

相關文章
相關標籤/搜索