JavaScript 常用方法:字符串篇

  继上一篇《数组篇》。本文整理了常用的字符串操作方法,适合初学者入门和开发者速查。

方法描述示例(const str = ‘orange’)
length获取字符串长度str.length // 6
(length是属性,不是方法)
split(‘分隔符’)用来将字符串拆分成数组str.split('')
// ['o', 'r', 'a', 'n', 'g', 'e']
substring(start [, end])用于字符串截取,左闭右开
(end可以省略,表示截取到字符串末尾)
str.substring(2,4) // an
str.substring(2) // ange
slice(start [, end])用于字符串截取,左闭右开类似substing
startsWith(str [, startIdx])检测是否以某字符串开头,返回true/false
从startIdx位置开始检测
str.startsWith('ora') // true
str.startsWith('a', 2) // true
endsWith(str [, endIdx])检测是否以某字符串结尾,返回true/false
endIdx指定末尾位置
(endInx是想要检测的索引+1)
str.endsWith('ge') // true
str.endsWith('g', 5) // true
includes(str [, index])判断字符串是否包含另一个字符串,返回true/false
index表示开始检索的位置
str.includes('range') // true
indexOf(str [, index])检测是否包含某字符串
返回第一次出现的位置索引值
str.indexOf('range') // 1
toUpperCase()
toLowerCase()
用于将字母转换成大写
用于将字母转换成小写
str.toUpperCase() // ORANGE
replace(oldStr, newStr)将字符串中的oldStr替换成newStr
默认只替换第一个匹配项
全部替换推荐replaceAll或者正则的‘g’
str = 'a orange'
str.replace('a', 'b')
// b orange
str.replaceAll('a', 'b')
// b orbnge
str.replace(/a/g, 'b')
// b orbnge
trim()从字符串的两端移除空白字符
修改一端可以使用trimStart()trimEnd()
repeat(n)表示将字符串重复n次str.repeat(2) // orangeorange
match(regExp)用于查找字符串,支持正则匹配
返回数组(包括所有匹配的str),没有返回null

补充

substring和slice的区别

substringslice都用于截取字符串,且都接收两个参数:起始位置和结束位置,表示截取从起始位置到结束位置之间的字符串(左闭右开)。如果省略了第二个参数(结束位置),则默认截取到字符串尾部。

它们的主要区别如下:

  • slice:支持负数参数。正数表示从字符串前面开始计数,负数表示从字符串末尾倒数计数。
const str = 'orange'
// o: 0/-6;  r: 1/-5;  a: 2/-4;  n: 3/-3;  g: 4/-2;  e: 5/-1;
console.log(str.slice(1, 4)) // 'ran'
console.log(str.slice(-4, -1)) // 'ang'
console.log(str.slice(-1, -4)) // ''
console.log(str.slice(1, -1)) // 'rang'
  • substring:不支持负数参数。若传入负数,会被自动转换为0。同时,substring会自动将较小的参数作为起始位置,较大的作为结束位置。
const str = 'orange'
console.log(str.substring(1, 4)) // 'ran'
console.log(str.substring(1, -1)) // 'o',相当于(0,1)
console.log(str.substring(-1, -4)) // '',相当于(0,0)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值