八、字符串方法
字符串本身确确实实没有方法 是它们的包装类型有方法
包装类型:为了方便操作字符串、操作数字、操作布尔值,JS就内置了一些对应的引用类型。
当我们写代码的时候
var str = 'abcdefg';
str.方法()
但是JS引擎会悄悄地调用对应的引用类型中的方法
var str = 'abcdefg';
var strObj = new String(str);
strObj.方法();
strObj = null;
字符串的所有方法都不会改变原字符串
8.1 concat()
作用:拼接字符串
参数:被拼接的字符串
返回值:拼接之后的字符串
var str = 'a';
var result = str.concat('b')
console.log(result) // ab
8.2 slice()
作用:截取字符串
参数:同数组
返回值:截取到的字符串
var str = 'abcdefg';
var str1 = str.slice()
console.log(str1) // abcdefg
var str2 = str.slice(4)
console.log(str2) // efg
var str3 = str.slice(2, 4)
console.log(str3) // cd
8.3 indexOf()
作用:查找指定字符串位置
参数:
1. 被检索的字符串
2. 偏移位置
返回值:字符串下标位置或者-1
var str = '今天天气不错'
var index = str.indexOf('天气', 3)
console.log(index); // -1
8.4 charAt()
作用:查找指定位置的字符
参数:下标数字
返回值:就是被查找到的字符
var str = '今天天气不错'
var c = str.charAt(3)
console.log(c); // 气
8.5 toUpperCase()
作用:转大写
返回值:大写后的字符串
// toUpperCase方法
var str = 'aAbBcCdD'
console.log(str.toUpperCase()) // AABBCCDD
8.6 toLowerCase()
作用:转小写
返回值:小写后的字符串
// toLowerCase方法
var str = 'aAbBcCdD'
console.log(str.toLowerCase()) // aabbccdd
8.7 split()
作用 : 将字符串按照指定的规则切割成数组
返回值:数组
//切割字符串成数组 split()
var str4 = '1+2+3+4+5+6+7';
var split = str4.split('+')
console.log(split) // ["1","2","3","4","5","6","7"]
8.8 resplace()
作用:替换
参数:
- 被替换下的字符串
- 替换上的字符串
返回值:替换完成的字符串
// 替换 replace()
var str5 = '吃了吗?';
var replace = str5.replace('吃', '干饭');
console.log(replace); //干饭了吗