const test = 'hello' // 字符串长度为 5
// string.slice(start, end) // 提取一个字符串,从起始位置截取,不包含结束位置 start:开始索引 end:结束索引
// string.substring(start, end) // 提取一个字符串, end不支持负数,从起始位置截取,不包含结束位置 start:开始索引 end:结束索引
// string.substr(start,len) // 提取一个字符串,从起始位置开始截取,截取 len 个字符
// slice():
// 参数一(必须):一个整数,要开始截取字符的下标,如为负则代表从尾部开始截取。(如为负数:加上字符串长度)
// 参数二(可选):一个整数,要截取字符的数量。如果省略该参数,则默认为字符串长度string.length,即当前字符串的长度。
console.log(test.substr(2, 3))
// 1、slice和substring接收的是起始位置和结束位置(不包括结束位置)
console.log(test.slice(0, 4)) // hell
console.log(test.substring(0, 4)) // hell
// 2、substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置
console.log(test.substring(4, 0)) // 相当于test.substring(0, 4) // hell
// 3、当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,结果作为参数; substring则干脆将负参数都直接转换为0
console.log(test.slice(-2)) // 相当于 test.slice(-2 + 字符串长度) => test.slice(3) // lo
console.log(test.substring(-2)) // 相当于 test.substring(0) // hello
// 4、当slice的第二个参数小于第一个参数时会返回一个空串,
// 注意:如果有负数参数,要将它与字符串的长度相加
console.log(test.slice(3, -4)) // 相当于test.slice(3, 1) // 空串
console.log(test.substring(3, -4)) // 相当于test.substring(3, 0) => test.substring(0, 3) // hel
Understanding of js interception string method slice, substring, substr
Guess you like
Origin blog.csdn.net/weixin_46611729/article/details/115053506
Recommended
Ranking