数组中slice和splice 两者区别?

slice和splice都是数组中方法,但使用场景不同。

 slice:该方法用于从原数组中提取一个片段并返回一个新数组,这个属于浅拷贝,不会改变原数组。

语法:slice(startIndex, endIndex) ,其中 startIndex 是要提取片段的起始位置(包含该位置),

endIndex 是要提取片段的结束位置(不包含),如果省略 endIndex 则默认提取到的是数组末尾。

特点:

非变异操作:原数组保持不变。  支持负数索引:负数表示从数组末尾开始计算位置。

splice:该方法用于直接在原数组中删除,替换或添加元素,会改变原始数组,并返回被删除的原数组成的数组。

语法splice(startIndex,deleteCount[,item1,item2]),其中 startIndex 开始操作的索引位置,deleteCount 要删除原数的个数,后面的参数是可选的,用于指定位置插入新元素。

特点:

变异操作:会直接修改原数组

可以通过设置 deleteCount 为 0,来在指定位置插入元素,而无需删除任何元素。

使用场景:

(1)当你需要动态的从数组中移除一个或多个元素时。

(2)在数组的特定位置插入新元素。

(3)同时进行删除和插入操作,如替换数组中的某些元素。

总结

  • slice适合于数据提取和复制的场景,因为它不改变原数组,保证了数据的原始性。
  • splice适合于需要直接修改数组内容的场景,比如删除、插入或替换元素,它的操作更为灵活但也需要注意其会改变原数组的特性。选择哪个方法取决于你的具体需求:是否需要保持原数组不变,以及是否涉及到元素的增删改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值