八、字符串方法

字符串本身确确实实没有方法 是它们的包装类型有方法

包装类型:为了方便操作字符串、操作数字、操作布尔值,JS就内置了一些对应的引用类型。

当我们写代码的时候

  1. var str = 'abcdefg';
  2. str.方法()

但是JS引擎会悄悄地调用对应的引用类型中的方法

  1. var str = 'abcdefg';
  2. var strObj = new String(str);
  3. strObj.方法();
  4. strObj = null;

字符串的所有方法都不会改变原字符串

8.1 concat()

作用:拼接字符串

参数:被拼接的字符串

返回值:拼接之后的字符串

  1. var str = 'a';
  2. var result = str.concat('b')
  3. console.log(result) // ab

8.2 slice()

作用:截取字符串

参数:同数组

返回值:截取到的字符串

  1. var str = 'abcdefg';
  2. var str1 = str.slice()
  3. console.log(str1) // abcdefg
  4. var str2 = str.slice(4)
  5. console.log(str2) // efg
  6. var str3 = str.slice(2, 4)
  7. console.log(str3) // cd

8.3 indexOf()

作用:查找指定字符串位置

参数:

  1. 1. 被检索的字符串
  2. 2. 偏移位置

返回值:字符串下标位置或者-1

  1. var str = '今天天气不错'
  2. var index = str.indexOf('天气', 3)
  3. console.log(index); // -1

8.4 charAt()

作用:查找指定位置的字符

参数:下标数字

返回值:就是被查找到的字符

  1. var str = '今天天气不错'
  2. var c = str.charAt(3)
  3. console.log(c); // 气

8.5 toUpperCase()

作用:转大写

返回值:大写后的字符串

  1. // toUpperCase方法
  2. var str = 'aAbBcCdD'
  3. console.log(str.toUpperCase()) // AABBCCDD

8.6 toLowerCase()

作用:转小写

返回值:小写后的字符串

  1. // toLowerCase方法
  2. var str = 'aAbBcCdD'
  3. console.log(str.toLowerCase()) // aabbccdd

8.7 split()

作用 : 将字符串按照指定的规则切割成数组
返回值:数组

  1. //切割字符串成数组 split()
  2. var str4 = '1+2+3+4+5+6+7';
  3. var split = str4.split('+')
  4. console.log(split) // ["1","2","3","4","5","6","7"]

8.8 resplace()

作用:替换
参数:

  1. 被替换下的字符串
  2. 替换上的字符串

返回值:替换完成的字符串

  1. // 替换 replace()
  2. var str5 = '吃了吗?';
  3. var replace = str5.replace('吃', '干饭');
  4. console.log(replace); //干饭了吗