javascript常用字符串方法总结
str.charAt(index)
返回指定位置的字符串
var str = "hello world"; str.charAt(1); //e
str.charCodeAt(index)
返回指定位置的字符的Unicode编码
var str = "hello world"; str.charCodeAt(1); //101
str.concat(str1, str2, …, strN)
用于连接多个字符串
var str = "hello"; str.concat(",world"); //hello,world str.concat(",world", "!"); //hello,world!
str.indexOf(searchvalue, fromindex)
返回某个指定的字符串值在字符串中首次出现的位置
var str = "hello world"; str.indexOf("o"); //4
str.indexOf("a"); //-1 若未检索到,则返回-1 str.indexOf("o", 5); //7 fromindex参数可选,规定从字符串开始检索的位置
str.lastIndexOf(searchvalue, fromindex)
返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索
var str = "hello world"; str.lastIndexOf("o"); //7
str.lastIndexOf("a"); //-1 str.lastIndexOf("o", 5); //4
str.match(searchvalue/regexp)
在字符串检索指定的值,或找到一个或多个正则表达式的匹配
var str = "hello world!"; str.match("world"); //world str.match("worlld"); //null str.match("/o/"); //o str.match("/o/g"); //oo
str.replace(regexp/substr, replacement)
在字符串中用一些字符替换另一些字符,或替换一个与正则表达式相匹配的子串
var str = "hello world"; str.replace("o", "a"); //hella world str.replace(/o/, "a"); //hella world str.replace(/o/g, "a") //hella warld
str.search(regexp)
检索字符串中的子字符串,或检索与正则表达式相匹配的子字符串,返回第一个匹配的子串的起始位置
var str = "hello world"; str.search("ell"); //1
str.search("abc"); //-1 若未检索到,则返回-1 str.search(/ell/); //1
str.slice(start, end)
提取字符串的某个部分,并以新的字符串返回被提取的部分
var str = "hello world"; str.slice(1); //ello world str.slice(0, 2); //he str.slice(-1); //d 参数为负数,则以(字符串总长度-参数)做计算 str.slice(2, 0); //当start>end时,返回空
str.split(separator, howmany)
把一个字符串分割成字符串数组
var str = "hello world"; str.split("o"); //["hell", " w", "rld"]; str.split(""); //["h", "e", "l", "l", "o", " ", "w", "o", "r", "l", "d"];
str.substr(start, length)
在字符串中抽取从start下标开始的指定数目的字符
var str = "hello world"; str.substr(2); //llo world str.substr(2, 5); //llo w str.substr(2, -5); //length为负数时,返回空
str.substring(start, stop)
提取字符串介于两个指定下标之间的字符
var str = "hello world"; str.substring(2); //llo world str.substring(2, 5); //llo str.substring(5, 2); //llo
str.toLowerCase()
用于把字符串转化成小写
var str = "HELLO WORLD"; str.toLowerCase(); //hello world
str.toUpperCase()
用于把字符串转化成大写
var str = "hello world"; str.toUpperCase(); //HELLO WORLD
ES6新增的一些方法:
str.includes(str1, n),str.startsWith(str1, n),str.endsWith(str1, n)
确定一个字符串是否包含在另一个字符串中
includes(): 返回布尔值,表示是否找到了参数字符串
startsWith(): 返回布尔值,表示参数字符串是否在原字符串的头部
endsWidth(): 返回布尔值,表示参数字符串是否在原字符串的尾部
let str = "hello world"; str.includes("o"); //true str.startsWith("hello"); //true str.endsWith("!"); //true
这三个方法都支持第二个参数,表示开始搜索的位置
let str = 'hello world!'; str.startsWith('world', 6); // true str.endsWith('hello', 5); // true str.includes('hello', 6); // false
str.repeat(n)
返回一个新字符串,表示将原字符串重复n次
let str = "he"; str.repeat(2); //hehe str.repeat(2.9); //hehe 参数如果是小数,会被取整
str.padStart(length, str1), str.padEnd(length, str1)
若字符串不够指定长度,则在头部或尾部补全补全
let str = "hello"; str.padStart(7, "a"); //aahello str.padStart(4, "a"); //hello 若原字符串长度等于或大于指定的长度,则返回原字符串 str.padEnd(7, "a"); //helloaa str.padEnd(4, "a"); //hello