核心
-
slice:截取功能
截取数组为主,也可以截取字符串
返回新的数组,包含截取的元素
不改变原数组 -
splice:数组增删查改
只能对数组增删查改,字符串无效
返回新的数组,内容是被删除的元素
会改变原数组 -
spli:字符串 => 数组
字符串的方法,不是数组的方法
返回一个字符串数组 -
join:数组 => 字符串
1. slice()
- 从数组中截取任意个元素,返回结果为新的数组
- 不改变原数组
const arr = ['a', 'b', 'c', 'd', 'e', 'f'];
arr.slice(); // 无参数时,截取所有的元素。
arr.slice(2); // 从第二个值开始提取,直到末尾
arr.slice(-2); // 提取最后两个元素 负数会将其与长度相加,-2+6=4
arr.slice(2, 4); // 提取从第二个到第四个之间的元素(不包括第四个元素)
arr.slice(4, 2); // 空
2. splice()
- 从数组中删除任意个(可以是负的即增加)元素
- 返回结果为被删除元素组成的新数组
- 该方法会改变原数组,会将指定元素从原数组中删除
var arr1 = ['a', 'b', 'c', 'd', 'e', 'f'];
arr1.splice(1); //从第index为1的位置开始,删除元素
arr2.splice(-2); //删除最后两个元素,和slice同样的思想。
arr3.splice(1, 3); //从第index为1的位置开始删除元素,一共删除三个元素
// 增加系列
arr4.splice(1,0,'g','h') //纯增加情况
//变更的情况就是 先删除再增加,即替换
arr4.splice(1, 3, 'js', 'vue');//删除+增加 == 更改
3. split()
- split()是字符串的方法,不是数组的方法。
- 通过指定的分隔符(可以为空字符串’’),将一个字符串拆分成一个数组。不会改变原字符串
4. join()
- 将数组转换为字符串,返回转换后的字符串
- 不会改变原来的数组
- join()方法可以指定一个字符串(可以为空字符串)作为参数,其将会成为数组中元素的连接符;
- 如果不指定连接符,则默认使用 , 作为连接符,此时和 toString()的效果是一致的
var arr = ['a', 'b', 'c'];
arr.join(); // 这里没有指定连接符,所以默认使用 , 作为连接符
arr.join('-'); // 使用指定的字符串作为连接符