美文网首页
字符串替换、查询、转换、截取

字符串替换、查询、转换、截取

作者: 何小鹏 | 来源:发表于2021-10-08 10:55 被阅读0次

    字符串操作技巧

    1、判断字符串是否包含某个字符

    indexOf

    indexOf():查找某个字符,有则返回第一次匹配到的位置,否则返回-1
    indexOf(要查的元素,开始查询的下标位置)

    let str = "123456";
    console.log(str.indexOf("1"));   // 输出结果:0
    console.log(str.indexOf("7"));   // 输出结果:-1
    console.log(str.indexOf("6",6));   // 输出结果:7
    

    注:该方法同样适用于数组操作

    includes

    includes():该方法用于判断字符串是否包含指定的子字符串。如果找到匹配的字符串则返回 true,否则返回 false
    includes(要查的元素,开始查询的下标位置)

    注:使用 includes()比较字符串和字符时是区分大小写。

    let str = '123456';
    
    str.includes('1')  // 输出结果:true
    str.includes('7')  // 输出结果:false
    str.includes('6', 6)  // 输出结果:false
    

    注:该方法同样适用于数组操作

    2、字符串截取

    slice

    slice() 方法用于提取字符串的某个部分,并以新的字符串返回被提取的部分,不改变原字符串。
    slice(开始位置,结束位置)
    结束位置不填写值时表示到字符串结尾处,负数则代表从结尾开始

    let str = "abcdefg";
    str.slice(1,6);   // 输出结果:"bcdef" 
    str.slice(1);     // 输出结果:"bcdefg" 
    str.slice();      // 输出结果:"abcdefg" 
    str.slice(-2);    // 输出结果:"fg"
    str.slice(6, 1);  // 输出结果:"" 
    

    注:该方法同样适用于数组操作,数组使用时是浅拷贝

    substring

    substring() 用于提取字符串中介于两个指定下标之间的字符

    str.substring(a, b)
    a:需要截取的第一个字符的索引,该索引位置的字符作为返回的字符串的首字母。
    b:(可选)一个 0 到字符串长度之间的整数,以该数字为索引的字符不包含在截取的字符串内。

    substring 提取从 a 到 b(不包括)之间的字符。特别地:
    如果 a 等于 b,substring 返回一个空字符串。
    如果省略 b,substring 提取字符一直到字符串末尾。
    如果任一参数小于 0 或为 NaN,则被当作 0。
    如果任一参数大于 stringName.length,则被当作 stringName.length。
    如果 a 大于 b,则 substring 的执行效果就像两个参数调换了一样。见下面的例子。

    var anyString = "Mozilla";
    
    // 输出 "Moz"
    console.log(anyString.substring(0,3));
    console.log(anyString.substring(3,0));
    console.log(anyString.substring(3,-3));
    console.log(anyString.substring(3,NaN));
    console.log(anyString.substring(-2,3));
    console.log(anyString.substring(NaN,3));
    
    // 输出 "lla"
    console.log(anyString.substring(4,7));
    console.log(anyString.substring(7,4));
    
    // 输出 ""
    console.log(anyString.substring(4,4));
    
    // 输出 "Mozill"
    console.log(anyString.substring(0,6));
    
    // 输出 "Mozilla"
    console.log(anyString.substring(0,7));
    console.log(anyString.substring(0,10));
    

    3、字符串替换

    replace()

    替换指定字符串,并返回一个新的字符串,不改变原字符串

    string.replace(searchvalue, newvalue)

    searchvalue:一个RegExp 对象或者其字面量,要替换的字符串;
    newvalue:用于替换掉第一个参数在原字符串中的匹配部分的字符串,该参数可以为一个function函数

    let str = "abcdef";
    str.replace("c", "z") // 输出结果:abzdef
    

    4、字符串转数字

    parseInt()

    解析一个字符串并返回指定基数的十进制整数

    parseInt(string, radix)

    string:字符串,既被解析的值
    radix :可选从 2 到 36,表示字符串的基数。例如指定 16 表示被解析值是十六进制数。请注意,10不是默认值!
    由于不是所有的浏览器都是默认采用的10进制方案进行的,因此,在使用 parseInt 时,一定要指定一个 radix。

    parseInt("50",10);            // 输出结果:50
    

    parseFloat()

    函数解析一个参数(必要时先转换为字符串)并返回一个浮点数。

    给定值被解析成浮点数。如果给定值不能被转换成数值,则会返回 NaN。

    parseFloat("10.01")      // 输出结果:10.01
    

    相关文章

      网友评论

          本文标题:字符串替换、查询、转换、截取

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