slice
用于截取数组或者字符串 传入两个参数
参数1:开始截取的下标
参数2(可选):结束截取的下标 (默认截取到字符串或数组末尾)
参数不能颠倒顺序 否则查找为空数组
参数可以为负数 -> 从后往前截取
-1 为倒数第一个元素
返回值:一个新的数组 不改变原数组
var arr = [1,2,3,4,5,6,7]
//下标2截取到下标5
arr.slice(2,5) // [3, 4, 5]
//下标2截取到末尾
arr.slice(2) // [3, 4, 5, 6, 7]
//从倒数第二个下标截取到末尾
arr.slice(-2) //[6, 7]
//无法获取到元素
arr.slice(5,2) // []
作为字符串调用与数组调用的结果相同
//字符串内部也是有下标的
var str = 'i am good man'
str.slice(-5) //"d man"
subString
直观来讲 拿 subString 和 slice做比较更合适
subString只能用于截取字符串
传入两个参数
参数1:开始截取的下标位置
参数2:可选 结束截取的位置 和slice一样
当参数为负数时 内部会默认转换为0
如果后面的参数比前面的参数小 会进行位置调换 再做截取操作
var str = 'i am good man'
str.substring(6,-1) //"i am g"
//1、先将-1转换为0
//2、将1和6调换位置
//3、进行字符串的截取
与slice相同 subString也是返回一个新的字符串 不会改变原数组
splice
splice和slice单词拼写很像 但是功能却有很大的区别
splice更像是slice的增强版 功能非常强大
splice是数组的方法
传入n个参数
参数1:必选 指定一个下标 作为后面参数操作的起始下标
参数2:必选 (删除操作) 从参数1指定的下标开始 删除数组中的值 并将删除的值作为方法的返回值 参数2指定删除的数量
不删除则填 0 即可
参数3-n:可选 (插入操作)从参数1开始为数组添加元素 可一次添加多个元素
返回值 参数2指定删除的元素数组
这个方法是在原数组上做操作 所以会改变原数组
var arr = [1,2,3,4,5,6,7]
arr.splice(2,2) //3, 4]
console.log(arr) //[1, 2, 5, 6, 7]
splice也支持负数操作
当参数1为负数时 下标从后往前计算
参数2为负数 默认转换为0
split
字符串方法 作用:将字符串以特定的字符进行分割
返回值: 一个字符串数组
参数1 用于分割的 字符 或者 一个正则表达式
参数2 指定返回数组的最大长度 如果分割后的数组长度大于这个值 则会省略后面分割出来的字符串