与数组方法不同,字符串所有处理方法都不改变原字符串
字符串转数组:split(str),match(re);
返回布尔值:test(),incluedes(),startsWith(),endsWith()
识别正则:replace(),match(),test(),search()
转字符串
toString();非字符串传话成字符串;
位置相关方法
charAt(index):查找指定位置字符串,返回字符串
indexOf(item,index):从前开始查找指定字符串所在的位置,没有返回-1;
lastIndexOf(item,index):从后往前数,item第一次出现的位置,没有返回-1;
search(item); 从前往后,第一次出现的位置,item可以使用正则,没有返回-1;
获取指定字符串
substring(start,end):返回自定下标之间的元素,包括开始不包括结束;
slice(start,end):遇上相同,但是end可以是负数,-1代表倒数第一位;
substr(start,length):从start下标开始,返回指定长度字符串
字符串转数组
split(item,length) :以item为单位截取字符串,返回指定长度的数组;
match(re):返回匹配正则的字符串子集数组;
返回布尔型字符串处理方法
re.test(str) 判断字符串是否满足正则;
startsWith(item) 判断是否以指定内容开头(es6新增);
endsWith(item) 判断是否已制定内容结尾(es6新增);
includes(item) 判断是否包含某项(es6新增);
字符串大小写转换
toLowerCase():大赚小
toUpperCase():小转达
其他常用
replace(item,str); 指定字符串str替换指定项item;
replace(re,str); str替换使用正则匹配的item;
trim():出去字符串前后空格;
concat(); 合并字符串;
repeat(n); 重复字符串n次(es6新增);
字符串解构
let [a,b,c]=arry;
字符串膜拜反斜杠`
字符串常用处理函数
获取参数后缀名
function suffixName(str){
console.log(str.slice(str.lastIndexOf(".")+1));
}
suffixName("name.text");
获取字符串中某项重复出现几次
var str="abcdeafghai";
//方法1
function repeatNumner(str){
console.log(str.match(/a/g).length) // 正则里面不能加变量;
}
repeatNumner(str);
//方法2
function repeatNumner2(str,item){
let pos=str.index(item),
count=0;
while(str.indexOf("a")){
count++;
pos=str.indexOf(item,pos+1);
}
console.log(count)
}
字符串与正则相结合的运算很多,多用于数据校验,字符串特殊处理等;
网友评论