字符串的常用方法
charAt()/charCodeAt()
- 参数:字符的索引
- charAt(): 获取指定位置的字符串信息,没有返回空字符
let str = 'afwefwefweaewq'
let charStr = str.charAt(0)
console.log(charStr) // a
- charCodeAt(): 获取指定位置字符的ASCII值,没有返回NAN
let str = "ajfwijfnv"
let a = str.charCodeAt(0)
console.log(a)
substr/substring/slice
let str = "abcdefg"
let a = str.substr(1,3)
console.log(a)
let b = str.substr(0,2)
consloe.log(b) // ab
let str = "abcdefg"
let a = str.substring(2, 5)
console.log(a)
- slice(n,m)
- n: 第几个开始截取
- m: 截取到下标m的前一位
slice与substring相同,但是slice支持负数索引
indexOf/lastindexOf
- indexOf(x,y): 返回查找的信息否则返回-1
let str = "abcdeafg"
let a = str.indexOf('a', 0)
let b = str.indexOf('a', 1)
let c = str.indexOf('h', 1)
console.log(a)
console.log(b)
console.log(c)
- lastindexOf(x): 查找字符最后一次出现的位置,没有返回-1
let str = "abcdeafg"
let a = str.lastIndexOf('a')
console.log(a)
split
- 将字符串按照指定字符拆分成数组
- 支持正则
- split(s)
let str1 = '123,fwe,6453,fhu,235'
let str1Arr = str1.split(',')
console.log(str1Arr); // [ '123', 'fwe', '6453', 'fhu', '235' ]
// 正则支持
let str2 = `fwef
fgwef
weyy
werr`
let str2Arr = str2.split(/\n/)
console.log(str2Arr); // [ 'fwef', ' fgwef', ' weyy', ' werr' ]
replace
- 实现新老字符的替换通常搭配正则一起使用
- replace(老字符,新字符)
- 注意
- 使用字符串只会替换第一个
- 使用正则时需要加上全局匹配,否则也只会替换第一个
let str = '124,fewt,35s,5ga'
let a = str.replace(',', '')
let b = str.replace(/,/, '')
let c = str.replace(/,/g, '')
console.log(a);
console.log(b);
console.log(c);