所有用 单引号、双引号、反引号包起来的都是字符串
str.length ==>字符串的长度
str[0] ==> 获取索引为零(第一个)字符
str[str.length-1] ==> 获取最后一个字符str.length-1最后一项索引
str[10000] ==> undefined 不存在这个索引
字符串查找:charAt/charCodeAt
charAt:根据索引获取指定位置的字符
charCodeAt:获取指定字符的ASCII码值(Unicode编码值)
参数:n [number] 获取字符指定的索引
返回值:返回查找到的字符,找不到返回的是空字符串不是undefined,或者对应的编码值
let str = 'zhufengpeixun';
console.log(str.charAt(0)); ==> 'z'
console.log(str[0]); ==> 'z'
console.log(str.charAt(10000)); ==> ''
console.log(str[10000]); ==> undefined
console.log(str.charCodeAt(0)); ==> 122(z对应十进制的ASCII码值)
console.log(String.fromCharCode(122)); ==> 'z'
字符串的截取:substr/substring/slice 都是为了实现字符串的截取(在原来字符串中查找到自己想要的)
substr(n,m):从索引n开始截取m个字符,m不写截取到末尾(后面的方法也是)
substring(n,m):从索引n开始找到索引为m处(不含m),超过索引的也只截取到末尾
slice(n,m):和substring一样,都是找到索引为m处,但是slice可以支持负数作为索引,其余两个方法是不可以的
let str = 'zhufengpeixunyangfanqihang';
console.log(str.substring(3,7)); //==> 'feng'
console.log(str.slice(3,7)); // ==> 'feng'
console.log(str.substring(-7,-3)); //==>'' substring不支持负数索引
console.log(str.slice(-7,-3)); // ==>'nqih' slice支持负数索引(快捷查找:负数索引,我们可以按照str.length+负索引 的方式找)
验证字符是否存在:indexOf/lastIndexOf/includes
indexOf(x,y):获取x第一次出现位置的索引,y是控制查找的起始位置索引 lastIndexOf(x):最后一次出现位置的索引===>没有这个字符,返回的结果是-1 includes:包含为true,不包含为false
let str = 'zhufengpeixunyangfanqihang';
console.log(str.indexOf('n',7)); // ==> 12 查找字符串索引7及之后的字符串中,n第一次出现的位置索引
字符串中字母的大小写转换:toUpperCase()/toLowerCase()
toUpperCase():转大写
toLowerCase():转小写
//实现首字母大写
let str = 'zhufengpeixunyangfanqihang';
str = str.substr(0,1).toUpperCase()+str.substr(1);
console.log(str); // ==> 'Zhufengpeixunyangfanqihang'
split([分隔符]):把字符串按照指定的分隔符拆分成数组(和数组中join对应),支持传递正则表达式
//需求:把"|"分隔符变为,分隔符
let str = 'music|movie|eat|sport';
let ary = str.split('|'); //==>["music","movie","eat","sport"]
str = ary.join(',');
console.log(str); // ==> "music,movie,eat,sport"
6、replace(老字符,新字符):实现字符串的替换(经常伴随着正则而用)
let str = '珠峰@培训@杨帆@起航';
str = str.replace('@','-');
console.log(str); // ==> "珠峰-培训@杨帆@起航"在不使用正则表达式的情况下,执行一次replace只能替换一次字符
str = str.replace(/@/g,'-');
console.log(str); // ==> 珠峰-培训-杨帆-起航
7、trim/trimLeft/trimRight
去掉字符串中左右空格的