用于判断字符串是否包含指定的子字符串,返回值是布尔值
var str = "HELLO WORLD";
str.includes("O");// true
var nstr2 = str.includes("O",8);
console.log(nstr2); // false
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
如果没有找到匹配的字符串则返回 -1。
注意: indexOf() 方法区分大小写。
console.log(word.indexOf("全部内容") != -1) //true
indexOf(从前往后找。)
lastindexOf(从后往前找。)
test() 方法用于检测一个字符串是否匹配某个模式.
如果字符串中有匹配的值返回 true ,否则返回 false。
var word = ‘@@全部内容’
var reg = RegExp(/全部内容/)
console.log(reg.test(word)) //true
根据字符索引获取字符
console.log(str.charAt(1));//a
根据索引返回字符的ASCII值
console.log(str.charCodeAt(1));//97
对原字符串无影响。
substr(开始位置,length)
substring(开始位置,结束位置)取小不取大。
console.log(str.substr(0,3));
console.log(str.substring(0, 6))
弃用,不做了解
首先要明确search()的参数必须是正则表达式,而indexOf()的参数只是普通字符串。indexOf()是比search()更加底层的方法。
如果只是对一个具体字符串来查找,那么使用indexOf()的系统资源消耗更小,效率更高;如果是查找具有某些特征的字符串(比如查找以a开头,后面是数字的字符串),那么indexOf()就无能为力,必须要使用正则表达式和search()方法了。
很多时候用indexOf()不是为了真的想知道子字符串的位置,而是想知道长字符串中没有包含这个子字符串。如果返回索引值是-1,那么说明没有:不等于-1,那么就是有。
所以一般情况下indexOf比search更省资源。
str.replace("a", 's')//只替换一次
str.replace(/a/ig, 's')//正则可替换全部,相当于replaceAll用法
var s1 = 'hdbhjbj';
var s2 = 'fdsadsadsa';
console.log(str.concat(s1, s2));//hdbhjbjfdsadsadsa
字符串复制指定次数,返回值是字符串
var str = "HELLO WORLD";
var nstr1 = str.repeat(2);// HELLO WORLDHELLO WORLD
与substring用法一样,然后不同的是可以传入负值(负值是从末尾数负数,字符串末尾下标从-1开始,向前递减)
"yancy zhang".slice(-6,-1)
//zhan