1 结论
slice():截取功能
- 作用:截取数组、字符
- 返回值:新数组,截取的元素
- 不改变原数组
splice():数组增删查改
- 作用:数组的增删改查
- 返回值:被删除元素所组成的新数组
- 改变原数组
split:字符串 => 数组
- 字符串方法,不是数组的方法
- 返回值,一个字符串数组
join:数组 => 字符串
1 slice()
const arr = [1, 2, 3, 4, 5]
console.log(arr.slice()) //[ 1, 2, 3, 4, 5 ] 没有参数,截取所有元素
console.log(arr.slice(1)) //[ 2, 3, 4, 5 ] 从索引为1的元素开始截取所有元素
console.log(arr.slice(-2)) //[ 4, 5 ] 从后=>前查,第二个元素截取所有元素
console.log(arr.slice(2, 3)) //[ 3 ] 截取索引2~4的元素,不包括4
2 splice()
改变原数组,返回值是被删除的元素
const arr = [1, 2, 3, 4, 5]
//删除
arr.splice(1)
console.log(arr) //[1] 从索引为1的位置,删除元素
arr.splice(-2)
console.log(arr) //[ 1, 2, 3 ] 从-2位置删除到末尾
arr.splice(2, 2)
console.log(arr) //[ 1, 2, 5 ] 从索引为2的位置删除2个元素
//增加
arr.splice(1, 0, 1)
console.log(arr) //[ 1, 1, 2, 3, 4, 5 ]
//修改
arr.splice(1, 1, 1.5)
console.log(arr); // [ 1, 1.5, 3, 4, 5 ] 删除一个元素在加一个元素
3 split()
将字符串分割成字符串数组,不会改变原来字符串
const str = 'abcdc'
console.log(str.split('')) // [ 'a', 'b', 'c', 'd', 'c' ] 将字符串分割成字符串数组
console.log(str.split('c')[0]) // ab
console.log(str.split('c')[1]) // d
4 join()
数组转换为字符串,不改变原来数组
const str = [1, 2, 3]
console.log(str.join()) //1,2,3 默认逗号
console.log(str.join(',')) //1,2,3
console.log(str.join('!')) //1!2!3
console.log(str.toString())//1,2,3 和默认join一致用法