所有 单引号,双引号,反引号,包起来的都是字符串
let str = 'dadadadadadadsfsdqads'
// 每一个字符粗都是有0或者多个字符串组成
str.length // 字符串长度
str[0] // 获取索引为0第一个字符
str[str.length-1] // 获取最后一个字符
str[100000] //undefined 不存在这个字符
for(let i =0; i++;i < str.length;i++) {
let char = str[i]
console.log(char) //循环输出字符串每一个字符
}
1.charAt, charCodeAt
charAt:根据索引获取指定位置的字符
charCodeAt:获取指定字符的ASII码值(Unicode编码值)
@params:n [number] 获取字符指定的索引
@return:返回查找的字符(找不到返回的是空字符串, 而不是undefined 或者对应的编码值
let str = 'dadadafshsiofhkahdaida';
console.log(str.charCodeAt(1)); //97
console.log(str.charAt(2)); //d 相对于 str[100000]来说永远得不到undefined(好处)
console.log(str.charAt(10000)); //''
console.log(str[100000]); //undefined
2.substr/substring/slice
在原来字符串中查找到自己想要的(与数组查询slice很像)
substr(n,m) :从索引n开始截取m个字符,m不写截取到末尾(后面方法也是)
substring(n,m) :从索引n开始找到索引m处(不含m)
slice(n,m) :和substring一样,都是从n开始,找到索引m处,但是slice可以负数作为索引,其余两个方法是不可以的
let str = 'asadkjaosjalaaa';
console.log(str.substr(1,2)) // sa
console.log(str.substr(1)) // sadkjaosjalaaa
console.log(str.substring(1,2)) // s
console.log(str.substring(1,100000)) // sadkjaosjalaaa 超过索引 也是截取到字符串末尾
console.log(str.substring(1)) // sadkjaosjalaaa
console.log(str.slice(1,2)) // s
console.log(str.slice(1)) //sadkjaosjalaaa
console.log(str.slice(-7,-2)) // sjala 只有slice支持负数索引,按照str.length + 负索引开始查找
3.indexOf/lastIndexOf
indexOf(x,y) :获取x第一次出现位置的索引,y是控制查找的起始位置索引
lastIndexOf(x,y) :最后一次出现位置的索引
没有字符返回-1
let str = 'asadkjnaosjalaana';
console.log(str.lastIndexOf('n')) // 15
console.log(str.indexOf('n')) // 6
if(str.indexOf('@')===-1) {
console.log('不存在'); // 不存在
}
console.log(str.indexOf('jnao')) //5 验证整体第一次出现的位置,返回的索引是第一个字符的位置的索引 如果整体没有则返回-1
console.log(str.indexOf('n',9)) //15 查找字符串索引9之后n第一次出现的位置的索引
if(!str.includes('@')) {
console.log('不包含') //不包含
}
4.toupperCase/ toLowerCase
字符串大小写转换
toUpperCase() :转大写
toLowerCase() :转小写
5.split
split([分隔符]) :把字符串按照指定的分隔符拆分成数组,(和数组join对应)(支持正则0
需求:把竖线分隔符变为逗号分隔符
let str = 'musice|movie|sport';
let ary = str.split('|');
console.log(ary)
console.log(ary.toString()) // musice,movie,sport
6.replace
replace(老字符,新字符) :实现字符串的替换
let str = '二哈@张三@李四@王二狗子';
str= str.replace('@','|');
console.log(str) // 二哈|张三@李四@王二狗子 在不使用正则的情况下,执行一次,replace只能替换一次字符