字符串方法总结

236 阅读2分钟

常用字符串方法

includes( )

判断一个字符串是否包含在另一个字符串中,有则返回true,否则返回false

    let str = 'hellow world'
    console.log(str.includes('o'));  //true

charAt( )

从一个字符串中返回指定的字符

   let str = 'hellow world'
   console.log(str.charAt(5)); //w

concat( )

合并一个或多个字符串,返回一个新的字符串

  
  let  str1 = 'hellow '
  let str2 = 'world'
  console.log(str1.concat(str2)); //'hellow world'

indexOf( )

查找字符串元素,找到返回索引,找不到返回 -1

  
    let str = 'hellow world'
    console.log(str.indexOf('w')); //5
    console.log(str.indexOf('f')); //-1

lastIndexOf()

查找某个字符,有则返回最后一次匹配到的位置,否则返回-1

  
  let str = "abcabcacc";
  console.log(str.lastIndexOf("a"));  // 6
  console.log(str.lastIndexOf("f"));  // -1

charCodeAt( )

返回指定索引位置字符的 Unicode 值,返回值是整数,表示给定索引处的 UTF-16 代码单元,如果指定位置没有字符,将返回 NaN

   let str = "hellow";
  console.log(str.charCodeAt(1)); // "e" --> 101
  console.log(str.charCodeAt(8)); // NAN

split( )

把一个字符串分割成字符串数组, 该方法不会改变原始字符串

  let str = "abcdef";
  console.log(str.split(""));    // ['a', 'b', 'c', 'd', 'e', 'f']
  console.log(str.split("c"));   //  ['ab', 'def']
  console.log(str.split("", 3));  //  ['a', 'b', 'c']

slice( )

提取某个字符串的一部分,并返回一个新的字符串,且不会改动原字符串。

substr()substring()slice() 方法都可以用来截取字符串。

  
  let str = 'hellow'
  console.log(str.slice());  // hellow  默认截取全部
  console.log(str.slice(3));  // low  从索引截取到最后
  console.log(str.slice(1,4));  // ell  从索引开始到结束,前闭后开  
  console.log(str.slice(-2));   //ow   从结尾截取
  console.log(str.slice(-5,-1));  //ello

toLowerCase( )

把字符串转换为小写

   let str = "hELLow";
   console.log(str.toLowerCase());; // hellow

toUpperCase( )

把字符串转换为大写

   let str = "hELLow";
   console.log(str.toUpperCase());; // HELLOW

trim( )

移除字符串首尾空白符,该方法不会改变原始字符串

  
  let str = "  abcdef  "
  console.log(str.trim())   // 输出结果:"abcdef"

valueOf( )

返回某个字符串对象的原始值

  let str = "abcdef"
  console.log(str.valueOf()) // "abcdef"

padStart( )

用于头部补全, 该方法有两个参数,其中第一个参数是一个数字,表示字符串补齐之后的长度;第二个参数是用来补全的字符串。

    let str = 'x'
    let str1 = str.padStart(5, 'ab') 
    let str2 = str.padStart(4, 'ab') 
    console.log(str1,str2); // 'ababx'    'abax'

padEnd( )

尾部补全

  
    let str = 'x'
    let str1 = str.padStart(5, 'ab') 
    let str2 = str.padStart(4, 'ab') 
    console.log(str1,str2); // 'xabab'    'xaba'

replace( )

在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串

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

search( )

用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串 , 没有找到任何匹配的子串,则返回 -1

  
  let str = "abcdef";
  console.log(str.search(/bcd/) );  // 输出结果:1
  console.log(str.search(/cd/) );  // 输出结果:2
  console.log(str.search(/af/) );  // 输出结果:-1

startsWith()

检测字符串是否以指定的子字符串开始是返回 true,否则 false

  
  let str = 'Hello world'
  console.log(str.startsWith('Hello'))  //true
  console.log(str.startsWith('Hollo'))  //false

endsWith()

检测字符串是否以指定的子字符串开始结尾 是返回 true,否则 false

   let str = 'Hello world'
   console.log(str.endsWith('world')) //true
   console.log(str.endsWith('worll'))  //false