slice、splice傻傻分不清
前言
平时在日常开发过程中,总是间歇性的分不清数组的slice
和splice
方法,几乎每次需要用到的时候,都怀疑自己会记错了,都要去度娘一下。
slice
slice() 方法可以从已有的数组中返回选定的元素
语法
1 | arrayObject.slice(start, end) |
参数 | 描述 |
---|---|
start | 必填,规定从何处开始选取,如果是负数,则从数组尾部开始算起的位置,也就是说,-1指的是最后一个元素,-2是倒数第二个元素,以此类推。 |
end | 可选,规定从何处结束选取,该参数是数组断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从start到数组结束的所有元素。如果这个参数是负数,那么同上。 |
返回值:返回一个新的数组,包含从start到end(不包含该元素)的arrayObject中的元素。
说明:⚠️,该方法并不会修改数组,二是返回一个子数组。如果想删除数组中的一段元素,应该使用方法Array.splice()
splice
splice() 方法
向/从
数组中添加/删除
项目,然后返回被删除的项目。
⚠️:该方法会改变到原始数组
语法:
1 | arrayObject.splice(index, howmany, item1, ... , itemX); |
参数 | 描述 |
---|---|
index | 必须,证书,规定添加/删除 项目的位置,使用负数可以从数组结尾处规定位置。 |
howmany | 必须,要删除的项目数量,如果设置为0,则不会删除项目 |
item1,…,itemX | 可选,向数组添加的新项目 |
返回值 |
类型 | 描述 |
---|---|
Array | 包含被删除项目的新数组,如果有的话。 |
说明
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个项来替换那些被删除的元素。
如果从arrayObject中删除了元素,则返回的是含有被删除的元素的数组。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 online阳光-专注于大前端行业领域!