substring()
substring(start,end)表示从start到end之间的字符串,包括start位置的字符但是不包括end位置的字符。
substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点
start 或 end 为 NaN 或者负数,那么将其替换为0
子字符串的长度等于 start 和 end 之差的绝对值
let str = '测试substring'
console.log(str.substring(0,2)) // 测试
substr()
substr(start,length)表示从start位置开始,截取length长度的字符串。
length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到 stringvar 的最后。
现代浏览器允许 start 索引参数为负数,来表示从字符串结尾处开始,提取字符的数量
let str1 = '测试substring333'
console.log(str1.substr(0,3)) // 测试s
slice()
slice(start,end) 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符
start 必须。 要抽取的片断的起始下标,第一个字符位置为 0。如果为负数,则从尾部开始截取。
end 可选。要截取的片段结尾的下标。若未指定,则要提取的子串包括 start 到原字符串结尾的字符串;如果该参数是负数,是从字符串的尾部开始算起的位置
let str4 = 'handleSelect'
console.log(str4.slice(-3),str4.slice(-3, -1)) // ect ec
substing 和substr 不能用于数组截取;slice 可以用于数组截取,截取返回的是数组
split()
使用一个指定的分隔符把一个字符串分割存储到数组
let str2 = '测试;substring;333'
console.log(str2.split(";")) // ["测试", "substring", "333"]
John()
使用选择的分隔符将一个数组合并为一个字符串
let arr = [22, 333, 444, 555]
console.log(arr.join(";")) // 22;333;444;555
indexOf()
返回字符串中匹配子串的第一个字符的下标
let str3 = 'handleSelect'
console.log(str3.indexOf("e")) // 5
lastIndexOf
lastIndexOf()方法返回从右向左出现某个字符或字符串的首个字符索引值
let str4 = 'handleSelect'
console.log(str4.lastIndexOf("e")) // 9