js中常用字符串方法总结

  • includes()
判断一个字符串是否包含其他字符串
// 返回布尔值, 表示是否找到了参数字符串
let s = 'Hello world!'
s.includes('0') // true
// 支持第二个参数,表示开始搜索的位置
s.includes('Hello', 6) // false
  • endsWith()
判断一个字符串的结尾是否包含其他字符串的字符
// 返回布尔值, 表示字符串是否在原字符串的尾部
let s = 'Hello world!'
s.endsWith('!') // true
// 支持第二个参数,表示开始搜索的位置
s.endsWith('Hello', 5) // true
  • indexOf()
从字符串对象中返回首个被发现的给定值的索引值,如果没有找到则返回-1
let s = 'Hello world!'
s.indexOf('o') // 4
  • lastIndexOf()
从字符串中返回最后一个被发现的给定值的索引值, 如果没有找到则返回-1
let s = 'Hello world'
s.lastIndexOf('o') // 7
  • match()
使用正则表达式与字符串相比较
var str="1 plus 2 equal 3"
console.log(str.match(/\d+/g)) // [1, 2, 3]
  • padEnd()、padStart()
在当前字符串尾部、头部填充指定的字符串, 直到达到指定的长度. 返回一个新字符串
// padStart()用于头部补全, padEnd()用于尾部补全, 一共接受两个参数, 第一个参数用来指定字符串的最小长度, 第二参数是用来补全的字符串
'x'.padStart(5, 'ab') // 'ababx'
'x'.padEnd(5, 'ab') // 'xabab'
// 如果原字符串的长度大雨或等于指定的最小长度, 则返回原字符串
'xxx'.padStart(2, 'ab') // 'xxx'
'xxx'.padEnd(2, 'ab') // 'xxx'
// 如果用来补全的字符串与原字符串,两者的长度之和超过了指定的最小长度, 则会截去超出位数的补全字符串
'xxx'.padStart(10, '0123456789') // '0123456xxx'
'xxx'.padEnd(10, '0123456789') // 'xxx0123456'
// 如果省略第二个参数, 默认使用空分补全长度
'x'.padStart(4) // '   x'
'x'.padEnd(4) // 'x   '
// 另一个用途是提示字符串格式
'12'.padStart(10, 'YYYY-MM-DD') // 'YYYY-MM-12'
'09-12'.padStart(10, 'YYYY-MM-DD') // 'YYYY-09-12'
  • repeat()
返回指定重复次数的元素组成的字符串对象
// repeat方法返回一个新字符串, 表示将原字符串重复n次
'x'.repeat(3) // 'xxx'
// 参数如果是小数,会被向下取整
'x'.repeat(2.9) // 'xx'
// 如果repeat的参数是负数或者Infinity, 会报错
'x'.reapeat(Infinity) // RangeError
'x'.repeat(-1) //RangeError
// 如果参数是-1到0之间的小数或者是NaN,则等同于0
'x'.repeat(-0.9) // ''
'x'.repeat(NaN) // ''
// 如果参数是字符串,则会先转换成数字
'x'.repeat('x') // ''
'x'.repeat('3') // 'xxx'
  • replace()
被用来在正则表达式和字符串直接比较, 然后用新的子串来替换被匹配的子串
var str = '我我我我我爱中国!'
console.log(str.replace(/我/g, '你')) // 你你你你你爱中国!
  • search()
对正则表达式和指定字符串进行匹配搜索, 返回第一个出现的匹配项的下标
var str = 'Hello world!'
console.log(str.search(/world/)) // 6
  • slice()
摘取一个字符串区域,返回一个新的字符串
var str="Hello happy world!"
console.log(str.slice(6)) // happy world! 传一个参数,表示从该索引开始截取至最后
console.log(str.slice(6, 11)) // happy 传两个参数,第二个参数表示到该索之前引截止
  • split()
通过分离字符串成字串, 将字符串对象分割成字符串数组
var str = 'what are you doing now?'
var s = str.split(' ')
console.log(s) // ['what', 'are', 'you', 'doing', 'now']
var t = str.split(' ', 3)
console.log(t) // ['what', 'are', 'you'] 第二个参数表示前几个
  • startsWith()
判断字符串的起始位置是否匹配其他字符串中的字符
// 返回布尔值, 表示参数字符串是否在原字符串的头部
let s = 'Hello world!'
s.startsWith('Hello') // true
// 支持第二个参数,表示开始搜索的位置
s.startsWith('world', 6) // true
  • substr()
通过指定字符数返回在指定位置开始的字符串中的字符
var str = 'Hello world!'
var s = str.substr(3)
console.log(s) // 'lo world!'
var t = str.substr(3, 7)
console.log(t) // 'lo worl'
  • substring()
返回在字符串中指定两个下边之间的字符
var str="Hello world!"
console.log(str.substring(3)) // 'lo world!'
consoel.log(str.substring(3, 7)) // 'lo w'
  • toLowerCase()
把字符串转换成小写并返回
var str = 'HELLo WorlD'
console.log(str.toLowerCase()) // 'hello world'
  • toUpperCase()
把字符串转换成大写并返回
var str = 'HELLo WorlD'
console.log(str.toUpperCase()) // 'HELLO WORLD'
  • trim()
从字符串的开始和结尾去除空格
var str = '   123   abc    '
console.log(str.trim()) // '123   abc'
发布了94 篇原创文章 · 获赞 29 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/weixin_41849462/article/details/95500597