当前位置:   article > 正文

删除数组中的指定元素,且不改变原数组_js删除数组元素不改变原数组

js删除数组元素不改变原数组
let arr = [1, 2, 3, 4, 5]
  • 1

删除数组中的’3’,有以下几种方法:
首先是 会改变原数组的方法

  • delete array[下标]
delete arr[2]
console.log(arr)	// [1, 2, empty, 4, 5]
  • 1
  • 2

该方法不改变数组的length
在这里插入图片描述

  • array.splice(index,num) 第一个参数是指定元素的下标,第二个参数是删除几个
    如果数组的长度很长,第一个参数用-1或’array.length-1’就可以从后往前数来删除指定元素
arr.splice(2, 1)
console.log(arr)	// [1, 2, 4, 5]
  • 1
  • 2

在这里插入图片描述
然后是 不会改变原数组 的方法

  • array.slice(begin, end) begin是开始下标,为正数时从开头数起,为负数时从末尾数起,如果只有一个参数,就意味着从当前下标一直删除到最后;如果是两个参数,就是从begin下标开始到end下标,但不包括end下标的值
    slice是从数组中提取指定元素,也相当于另类的删除;第一个参数的值不能小于第二个参数
console.log(arr.slice(2))	// [3, 4, 5]
console.log(arr.slice(-2))	// [4, 5]
console.log(2, 3)	// [3]
console.log(-2, -1)	// [4]
  • 1
  • 2
  • 3
  • 4
  • 自己用js写的一个方法
 // 删除数组中的指定元素,且不改变原数组
export function remove(arr, element) {  
  let result = []  
  arr.forEach((i) => {  
    if(element !== i){  
      result.push(i)
    }  
  })
  return result
} 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/915110
推荐阅读
相关标签
  

闽ICP备14008679号