slice和splice的区别

slice
slice(start,end) 方法可从已有的数组中返回选定的元素,即原数组不会变。
start参数:规定从哪个下标开始选取,如果数负数,则从尾部开始,如-1,就是从数组最后一个开始。
end参数,此参数可选填,规定从何处结束,但是不包括此下标的元素;如果没有此参数,则截取从开始下标一直到结尾的元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

  let arr=[2,5,8,2,84,4,9];
  let newArr = arr.slice(1);  //一个参数
  console.log(arr,'原数组');  
  console.log(newArr);

在这里插入图片描述

  let arr=[2,5,8,2,84,4,9];
  let newArr = arr.slice(2,4);  //两个参数
  console.log(arr,'原数组');
  console.log(newArr);

在这里插入图片描述
splice
splice(index,howmany,item1,…itemX)可是数组的添加,删除,替换等;返回被删除的项目。该方法会改变原始数组。
index:表示添加或删除的位置,如果为负数,则就从尾部开始;
howmany:表示要删除元素的数量,如果为0,则表示不删除;
item1,…,itemX:可选填,表示要添加的元素。

删除:

let arr=[2,5,8,2,84,4,9]
let newArr = arr.splice(1,1);  //从下标1开始删除,删除一个元素
console.log(arr,'原数组'); //此时的数组已经没有5这个元素了
console.log(newArr);   //返回的是被删除的元素

在这里插入图片描述
添加:

 let arr=[2,5,8,2,84,4,9]
 let newArr = arr.splice(2,0,'lulu')  //添加元素,如果第二个参数是0的话,则不会删除数组中的元素,第三个参数开始就是向数组添加的元素,可添加多个
 console.log(arr,'原数组');
 console.log(newArr);

在这里插入图片描述
替换:相当于把元素删除,在此位置添加新的元素

 let arr=[2,5,8,2,84,4,9]
 let newArr = arr.splice(2,1,'lulu')  //删除下标为2的元素,并添加一个新元素
 console.log(arr,'原数组');
 console.log(newArr);

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值