JS字符串截取方法(详细)
今天浅浅地总结下常用的字符串截取方法,希望对大家有帮助...
1. substr()
function: 截取从指定下标开始指定长度的字符
grammar: str.substr(start, length)
parameter - statr:必传项 起始点下标(正负皆可)为负数时 从尾部开始计算位置
parameter - length:可选项 截取长度 如果不传值 默认截取到末尾 (不能为负数)
note:改方法不会改变原字符串
let str = 'abcdefg'
console.log(str.substr(1,2)) // 'bc'
console.log(str.substr(1,-2)) // ''
console.log(str.substr(1)) // 'bcdefg'
console.log(str.substr(-2)) // 'fg'
2. substring()
function: 截取两个指定下标之间的字符
grammar:str.substring(from, to)
parameter - from:指定的开始下标 (不可为负数)
parameter - to:指定的结束下标 (不可为负数)
note:
1. from或者to存在负数时 会被替换为0
2. from和to相等时 返回空字符串
3. from的值小于to的值 他们的值会相互替换
4. 返回的字符包括开始下标对应的字符 不包括结束下标对应的字符
let str = 'abcdefg'
console.log(str.substring(1,5)) // 'bcde'
console.log(str.substring(1,-3)) // 'a'
onsole.log(str.substring(1)) // 'bcdefg'
console.log(str.substring(3,2)) // 'c'
console.log(str.substring(4,4)) // ''
3. slice()
function: 截取两个指定下标之间的字符
grammar: str.slice(from, to)
parameter - from:指定的开始下标 如果为负数 从字符串结尾开始计算位置
parameter - to:指定的结束下标
note:返回的字符包括开始下标对应的字符 不包括结束下标对应的字符
let str = 'abcdefg'
console.log(str.slice(1,3)) // 'bc'
console.log(str.slice(-3)) // 'efg'
console.log(str.slice(-3,-1)) // 'ef'
console.log(str.slice(-3,1)) // ''
console.log(str.slice(1)) // 'bcdefg'
4. charAt()
function: 截取指定位置的字符
grammar: str.charAt(index)
parameter - index: 指定位置 字符在字符串中的位置
let str = 'abcdefg'
console.log(str.charAt(3)) // 'd'