js删除数组指定下标的元素

  现在遇到一个需求要删掉下标为index的元素,下面介绍两种方法:

  一、splice:删除后,后面的元素自动填补到前面

arr.splice(index, 1) 

  举例:现在有数组  arr=['a','b','c','d']

arr.splice(1, 1); //结果arr=['a','c','d'](下标1开始,删除1个)

  注意:

  上面的代码中,我们要注意,如果想修改 arr 的值,直接这样操作 arr 直接就变了,而不要写作 arr= arr.splice(1,1),因为 splice() 方法的返回值为删除掉的元素

  补充:

  • spice增加:
arr.splice(1,0,'str'); //结果arr=['a','str','b','c','d']
  • spice替换:
arr.splice(1,1,'str'); //结果arr=['a','str','c','d']
  • spice替换2:
arr.splice(1,2,'str'); //结果arr=['a','str','d'](就是说:下标1开始2个换成1个“str”)
  • spice删除多个:
arr.splice(1,2); //结果arr=['a','d']

  二、delete:删除后,该下标位置元素为undefined

delete arr[index];//结果arr=['a',undefined,'c','d']

  

 

posted @ 2020-03-02 01:21  刘彤彤  阅读(70012)  评论(0编辑  收藏  举报