JavaScript:数组删除指定元素

发布时间 2023-04-04 14:41:58作者: nini-

1.shift()方法

用于删除数组中的第一个元素。

注:此方法会改变数组的长度

let arr = [1,2,3]
arr.shift() // 删除1
// arr为[2,3]

2.pop()方法

用于删除数组中最后一个元素

注:此方法会改变数组的长度

let arr = [1,2,3]
arr.pop(); //删除3
// arr为[1,2]

3.splice()方法

用于添加删除数组中的指定元素

注:此方法会改变数组长度

let arr = [1,2,3]
arr.splice(0,1)
// arr为[2,3]

//删除数组中某个指定元素
let value = 'b', arr=['a','b','c','d']
arr.splice(arr.indexOf(value), 1) //删除'b'
// arr为['a','c','d']

4.slice()方法

从已有数组中返回选定的元素

注:此方法不会改变原始数组

let arr = [1,2,3]
let newArr = arr.slice(1)
// arr为[1,2,3]
// newArr为[2,3]

5.for循环删除

比较麻烦,不推荐

let index = 3,
    arr = [1,2,3,4],
    newArr = [];
for(let i = 0;i < arr.length; i++) {
      if(i !== index) {
          newArr.push(arr[i])                
    }      
}    
// arr为[1,2,3,4]
// newArr为[1,2,3]

6.delete关键字删除

用于删除(数组)元素

注:delete关键字删除元素后数组长度不变,只是删除元素被置为empty了

let arr = [1,2,3,4]
delete arr[2]
// arr为[1,2,empty,4]

7.filter删除

用于删除指定元素

let arr = ['a','b','c','d'], value='b'
arr = arr.filter(item => item != value)
// arr为['a','c','d']

8.set删除

用于删除指定元素