美文网首页
步遥——字符串新增方法

步遥——字符串新增方法

作者: 你还想好吗 | 来源:发表于2020-12-24 19:23 被阅读0次

    1:判断字符串是否在另一个字符串中,原来只有indexOf
    indexOf:返回第一次匹配到字符串的位置,传第二参数(位置),会从该位置之后查找,找不到返回-1
    es6新增了3种方法:
    includes:返回布尔值,表示是否找到了参数字符串;传第二参数(位置),会从该位置之后查找

    'statswith'.includes('h')//true
    'statswith'.includes('h',9)//false
    

    startsWith:返回布尔值,表示参数字符串是否在原字符串的头部;传第二参数(位置),会从该位置之后查找

    'statswith'.startsWith('h')//false
    

    endsWith:返回布尔值,表示参数字符串是否在原字符串的尾部;传第二参数(位置),会从该位置之后查找

    'endwith'.endsWith('ith') // true
    

    2:将原字符串重复n次
    n为小数时,则取Math.floor之后重复
    n为负数或Infinity,则会报错
    n为NaN,则视同为0
    n为字符串,则转为数字再重复
    repeat

    'statswith'.repeat(5)//"statswithstatswithstatswithstatswithstatswith"
    'statswith'.repeat(0)//""
    

    3:补全字符串
    3.1:当字符串长度不够指定长度,会在头部或尾部补全
    如果原字符串的长度,大于或等于最大长度,则字符串补全不生效,返回原字符串
    3.2:如果用来补全的字符串与原字符串,两者的长度之和超过了最大长度,则会截去超出位数的补全字符串
    3.3:如果省略第二个参数,默认使用空格补全长度
    3.4:padStart常见用途是为数值补全指定位数,另一个是提示字符串格式
    padStart:头部补全
    padEnd:尾部补全

    'x'.padEnd(5,'n')//xnnnn" 字符串长度为5 ,不够则用‘n’补全
    'test'.padStart(4,'f')//"test"  字符串长度够,则不用补全
    'test'.padStart(6,'f')//"fftest" 
    'test'.padEnd('6','ejhtker')//"testej" ,超出总长,则截去'ejhtker'中超出的位数
    'test'.padEnd(6)//"test  "
    '09-12'.padStart(10,'YYYY-MM-DD')//"YYYY-09-12"提示格式
    
    

    4:消除空格:
    trimStart:消除字符串头部的空格,保留尾部的空格,返回新字符串,不修改原始字符串
    trimEnd:消除尾部的空格,保留头部的空格,返回新字符串,不修改原始字符串
    以上对字符串头部或尾部的tab键,换行符等不可见的空白符号也有效

    ' sds'.trimStart()//'sds'
    'sfh  '.trimEnd()//'sfh'
    

    浏览器中部署了两个方法:trimLeft是trimStart的别名,trimRight是trimEnd的别名

    5:匹配字符串中满足正则表达式的匹配项
    matchAll

    [...'testesbes'.matchAll('es')] // [Array(1), Array(1), Array(1)] 需要...才能看到匹配项
    

    6:替换字符串,不改变原字符串,返回一个新的字符串
    原始的replace只能替换第一个匹配

    'sgasg'.replace('g','_')//"s_asg"
    

    replaceAll可以一次性替换所有的匹配
    该函数的第二个参数可以是一个替换的字符串,也可以是一个函数,该函数的返回结果会替换匹配到的字符

    'sgasg'.replaceAll('g','_')//"s_as_"
    

    7:根据正则查找字符串
    search: //根据正则查找原字符串中匹配的字符串的位置
    indexOf://根据字符串查找子字符串在原字符串中的位置

    let string = 'sdhjkHSFJDH'
    string.search(/[A-Z]/g)//5
    string.indexOf('H')//5
    

    相关文章

      网友评论

          本文标题:步遥——字符串新增方法

          本文链接:https://www.haomeiwen.com/subject/lkomnktx.html