JS基础总结 - slice()、splice() 和 split()对比
数组
slice() | splice() | |
---|---|---|
定义 | 从已有的数组中,返回选定的元素的数组。 | 删除/替换/原地添加元素来修改数组 |
改变原数组 | 否 | 是 |
用法 | arrObj.slice(start, end) // [start, end) |
arr.splice(index, num, item1, ....., itemX) |
参数1说明 | start:必需。可为负数,-1为最后一位,依次往前推。 | index:必需。规定添加/删除项目的位置,可为负整数。 |
参数2说明 | end:可选。为空则一直到最后。可为负数,-1为最后一位,依次往前推。不包括该元素。 | num:要删除的项目数量。如果设置为 0,则不会删除项目。 |
参数3说明 | item1, ..., itemX:可选。向数组添加的新项目。 |
字符串
slice() | split() | |
---|---|---|
定义 | 提取某个字符串的一部分,并返回一个新的字符串 | 使用指定的分隔符字符串将一个String对象分割成子字符串数组 |
改变原数据 | 否 | 否 |
用法 | str.slice(start, end) // [start, end) |
str.splice('separator', limit) |
参数1说明 | start:必需。可为负数,-1为最后一位,依次往前推 | separator:每个拆分应发生的点的字符串。为空则拆分每个字符 |
参数2说明 | end:可选。为空则一直到最后。可为负数,-1为最后一位,依次往前推。不包括该元素 | limit:整数,限定返回的分割片段数量 |