字符串对象创建的方法有两种
1.字面量方式创建
var str = 'hello'
2.new 方式创建
var str = new String('hello')
常用属性 length 字符串长度
常用方法
1. charAt(下标) 获取字符串中对应下标的字符
var str = 'hello'
console.log(str.charAt(4)) //输出 o
2. charCodeAt(下标) 获取字符串对应的下标字符的Unicode编码
3. concat() 字符串拼接 用得少 基本上直接使用 +
4. endsWith() 判断字符串是否以某个字符串结尾 区分大小写 返回布尔值
5. indexOf() 判断字符串是否包含某个字符串 区分大小写 返回第一次找到的下标 没有返回 -1
6. includes() 判断字符串是否包含某个字符串 区分大小写 返回布尔值
7. lastIndexOf() 和 5用法一样 但是 是从字符串后面开始往前找
8. padEnd() 使用给定字符串填充字符串到指定的长度 往后填 返回填充好的字符串 原字符串不变
var str = 'a'
var res = str.padEnd(5,'c')
console.log(str) //a
console.log(res) //acccc
9. padStart() 使用给定字符串填充字符串到指定长度 往前填 返回填充好的字符串 原字符串不变
10. repeat() 让字符串重复指定次数 原字符串不变
var str = 'a'
console.log(str.repeat(2)); //aa
console.log(str); //a
11. slice() 字符串的截取,包括开头,不包括结尾,返回截取后的字符串,原字符串不变。
let str = '123456'
// 填两个参数 a,b 从a截取到b 不包括b
// 填一个参数 a 从a截取到末尾
// 不填参数 从0截取到最后
//截取str 里面的 3-5 也就是数组下标2-4 但是第二个参数不包括 所以就是 2-5
str.slice(2,5)
12. split() 字符串的拆分 根据给定字符 对字符串进行拆分 返回数组 原字符串不变
var str2 = 'hello world'
console.log(str2.split(' '))//['hello', 'world']
13. startsWith() 判断字符串是否以某个字符串开头 区分大小写 返回布尔值
14. toLowerCase() toLocaleLowerCase() 将字符串变成小写
15. toUpperCase() toLocaleUpperCase() 将字符串变成大写
16. trim() 去掉字符串左右的空白 trimLeft() 去掉左空白 trimRight() 去掉右空白 返回去掉空格之后的字符串
17. search() 检测字符串是否满足某个规则 返回满足条件的开始位置 或者-1
search(正则) 如果不写正则的话会自动使用 new RegExp(内容) 转化成正则
var str5 = 'hello world'
console.log(str5.search(/[a-z]/)) // 0
console.log(str5.search(/[A-Z]/)) // -1
18. match() 获取字符串中满足条件(正则)的一个或多个子字符串
match(regexp) 如果不写正则的话会自动使用 new RegExp(内容) 转化成正则
想要match匹配全部满足条件的 那么正则 就需要加 g 修饰符
返回值 如果只有一个满足的话 返回的是类数组 如果有多个 返回的是数组
var str6 = '今天8月26日,最高气温30℃,最低气温20℃'
//我要得到两个气温的数字
var re = /-?\d{1,2}(?=℃)/g
console.log(str6.match(re)) // ['30', '20']
19. replace() 用新的字符串替换满足条件的字符串 返回替换之后的字符串
用法 replace(老的字符串或者正则,新的字符串或者替换的功能函数)
var str7 = '2020 运动会 ,2020 加油'
// 2020替换为2021
//全部替换 需要写正则 正则必须使用去全局修饰符
var re = /2020/g
console.log(str7.replace(re,"2021")) //2021 运动会 ,2021 加油
//函数3个参数 第一个 满足条件的字符串 第二个参数 前面第一个参数对应的开始的下标 第三个参数原字符串
console.log(str7.replace(re,function(a,b,c){
console.log(a) //2020
console.log(b) //第一次2020下标是0 第二次2020下标是10
console.log(c) //2020 运动会 ,2020 加油
return '2021'
})) // 2021 运动会 ,2021 加油
希望各位大佬补充。