常用的字符串方法
1.str.slice(start,end) 方法会截取并返回一个新字符串,不会影响原字符串
let str = "这是一个字符串"
let newStr = str.slice(1,2)
let newStr1 = str.slice(1)
console.log(str); // 这是一个字符串
console.log(newStr); // 是
console.log(newStr1); // 是一个字符串
//
2.str.substr(start,length) 用法和slice类似,只不过它的第二个参数是要截取的长度,而不是结束的索引,不会影响原字符串
重点: <ECMAscript 没有对该方法进行标准化,因此不建议使用它>
let str = "这是一个字符串"
let newStr = str.substr(1,2)
console.log(str); // 这是一个字符串
console.log(newStr); // 是一
//
4.str.charAt(start) 方法输入索引时,只返回那个索引相应的值,当索引大于字符串长度时会返回空字符串,不会影响原字符串
let str = "这是一个字符串"
let newStr = str.charAt(1,2)
let newStr1 = str.charAt(1)
let newStr2 = str.charAt(1000)
console.log(str); // 这是一个字符串
console.log(newStr); // 是
console.log(newStr1); // 是
console.log(newStr2); // ""
//
5.str.concat(string…) 方法用于拼接多个字符串,和用+拼接字符串的效果是一样的,不会影响原字符串
let str = "这是一个字符串"
let newStr = str.concat("+1")
let newStr1 = str.concat("和一个","字符串")
console.log(str); // 这是一个字符串
console.log(newStr); // 这是一个字符串+1
console.log(newStr1); // 这是一个字符串和一个字符串
console.log("拼接两个"+"字符串"); // 拼接两个字符串
//
6.str.indexOf(searchString,position) 方法用于在字符串内查询一个字符串,找到了就返回字符串的位置,没找到就返回-1,position是查询开始的索引,默认为0,不会影响原字符串
let str = "这是一个字符串"
let newStr = str.indexOf("字")
let newStr1 = str.indexOf("无")
console.log(str); // 这是一个字符串
console.log(newStr); // 4
console.log(newStr1); // -1
//
7.str.lastIndexOf(searchString,position) 方法indexOf方法类似,只不过它是从该字符串的末尾开始查找而不是从开头,不会影响原字符串
let str = "这是一个字符串"
let newStr = str.lastIndexOf("字")
let newStr1 = str.lastIndexOf("无")
console.log(str); // 这是一个字符串
console.log(newStr); // 4
console.log(newStr1); // -1
//
8.str.localeCompare(target)方法用来比较两个字符串,返回比较结果数字,target大于或小于比较的字符串时,返回大于或小于的字的数量,一样则返回0
let str = "这是一个字符串"
let str1 = "这也是一个字符串"
let str2 = "一个字符串"
let str3 = "这是一个字符串"
let newStr = str.lastIndexOf(str1)
let newStr1 = str.lastIndexOf(str2)
let newStr2 = str.lastIndexOf(str3)
console.log(newStr); // -1
console.log(newStr1); // 2
console.log(newStr2); // 0
//
9.str.match(regexp)match方法让字符串和一个正则表达式进行匹配。它依据g标识来决定如何进行匹配。如果没有g标识,那么调用string.match(regexp)的结果与调用regexp.exec(string)的结果相同。
//
10.str.replace(searchValue,replaceValue) 方法可以对string进行查找和替换操作,并返回一个新的字符串。searchValue可以是一个字符串或者一个正则表达式对象。如果searchValue是一个字符串,那么searchValue就是需要查找的值,replaceValue是需要替换成的值
let str = "这是一个字符串,再加一个字符串"
let reg = new RegExp("一个","g")
let newStr = str.replace("字符串","宝批龙")
let newStr1 = str.replace(reg,"两个")
console.log(str); // 这是一个字符串,再加一个字符串
console.log(newStr); // 这是一个宝批龙,再加一个字符串
console.log(newStr1); // 这是两个字符串,再加两个字符串