JavaScript常用字符串方法

128 阅读1分钟

字符串的常用方法

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); // 97

substr/substring/slice

  • substr(n,m)
    • n 第几个开始截取
    • m 截取几个字符
let str = "abcdefg"
let a = str.substr(1,3)
console.log(a); // bcd
let b = str.substr(0,2)
consloe.log(b) // ab
  • substring(n,m)
    • n: 第几个开始截取
    • m: 截取到下标m的前一位
let str = "abcdefg"
let a = str.substring(2, 5)
console.log(a); // cde
  • slice(n,m)
    • n: 第几个开始截取
    • m: 截取到下标m的前一位 slice与substring相同,但是slice支持负数索引

indexOf/lastindexOf

  • indexOf(x,y): 返回查找的信息否则返回-1
    • x: 查找的字符信息
    • y: 开始查找的位置
let str = "abcdeafg"
let a = str.indexOf('a', 0)
let b = str.indexOf('a', 1)
let c = str.indexOf('h', 1)
console.log(a); // 0
console.log(b); // 5
console.log(c); // -1
  • lastindexOf(x): 查找字符最后一次出现的位置,没有返回-1
    • x: 查找x最后一次出现的索引
let str = "abcdeafg"
let a = str.lastIndexOf('a')
console.log(a); // 5

split

  • 将字符串按照指定字符拆分成数组
  • 支持正则
  • split(s)
    • 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); // 124fewt,35s,5ga
console.log(b); // 124fewt,35s,5ga
console.log(c); // 124fewt35s5ga