js删除数组的几种方式

js删除数组的几种方式一 删除第一个元素 1 shift 方法用于把数组的第一个元素从其中删除 并返回第一个元素的值 注意 此方法改变数组的长度 提示 移除数组末尾的元素可以使用 pop 方法 let arr 1 2 3 4 5 arr shift 1 arr gt 2

大家好,我是讯享网,很高兴认识大家。

一、删除第一个元素                                                                       

1、shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

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

提示: 移除数组末尾的元素可以使用 pop() 方法。

let arr = [1,2,3,4,5] arr.shift() // 1 // arr => [2,3,4,5] 
讯享网

 2、slice() 方法可从已有的数组中返回选定的元素。

slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。

注意: slice() 方法不会改变原始数组。

讯享网let arr = [1,2,3,4,5] let newArr = arr.slice(1) // arr => [1,2,3,4,5] // newArr => [2,3,4,5]

3、splice() 方法用于添加或删除数组中的元素。

注意:这种方法会改变原始数组。

返回值

如果删除一个元素,则返回一个元素的数组。 如果未删除任何元素,则返回空数组

let arr = [1,2,3,4,5] let newArr = arr.splice(0, 1) // arr => [2,3,4,5] // newArr => [1]

 二、删除最后一个元素

       

1、pop() 方法用于删除数组的最后一个元素并返回删除的元素。

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

提示: 移除数组第一个元素,请使用 shift() 方法。

1

2

3

let arr = [1,2,3,4,5]

arr.pop() //  5

// arr => [1,2,3,4]

2、slice() 方法

1

2

3

4

let arr = [1,2,3,4,5]

let newArr = arr.slice(0, arr.length - 1)

// arr => [1,2,3,4,5]

// newArr => [1,2,3,4]

3、 splice() 方法用于添加或删除数组中的元素。

1

2

3

4

let arr = [1,2,3,4,5]

let newArr = arr.splice(arr.length - 1, 1)

// arr => [1,2,3,4]

// newArr => [5]

 

三、删除数组中某个指定下标的元素

1、splice 删除

1

2

3

4

let index = 3

let arr = [1,2,3,4,5]

 arr.splice(index, 1) // [4]

// arr => [1,2,3,5]

2、for循环删除

1

2

3

4

5

6

7

8

9

10

11

12

13

let index = 3, // 删除的id

let arr = [1,2,3,4,5],

let arrLen = arr.length,

let newArr = [];

  

for (let i = 0; i < arrLen; i++) {

    if (i !== index) {

        newArr.push(arr[i])

    }

}

  

// arr => [1,2,3,4,5]

// newArr => [1,2,3,5]

3、delete删除

JavaScript提供了一个delete关键字用来删除(清除)数组元素。

要注意的是,使用delete删除元素之后数组长度不变,只是被删除元素被置为undefined了。遍历直接跳过undefined

1

2

3

4

let index = 3

let arr = [1,2,3,4,5]

delete arr[index]

// arr  = > [1, 2, 3, empty, 5]

 四、删除数组中某个指定元素 

1、splice 删除

1

2

3

4

5

let value = 'b',

let arr = ['a','b','c','d']

  

arr.splice(arr.indexOf(value), 1) // ['b']

// arr => ['a','c','d']

2、filter 删除

1

2

3

4

5

let arr = ['a','b','c','d'],

let value = 'b'

  

arr = arr.filter(item => item != value)

// arr => ['a','c','d']

3、for 删除

1

2

3

4

5

6

7

8

9

10

11

12

let value = 'b',

let arr = ['a','b','c','d'],

let arrLen = arr.length,

let newArr = []

  

for (let i = 0; i < arrLen; i++) {

    if (arr[i] !== value) {

        newArr.push(arr[i])

    }

}

  

// 其他forEach、map、for of循环同理

4、Set 删除

1

2

3

4

5

6

let arr = ['a','b','c','d'],

let  value = 'b'

let newSet = new Set(arr)

newSet.delete(value)

let newArr = [...newSet]

// newArr => ['a','c','d']

小讯
上一篇 2025-02-20 23:27
下一篇 2025-02-20 19:04

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/12331.html