JavaScript字符串对象的方法详解
前面的博客我们说到了字符串对象的创建,属性及字符串的拼接。现在来详细讲一下字符串的方法。
1.ES6之前的方法
// js字符串的方法
var str="hello";
var str1="world";
// concat() 连接两个或更多字符串,并返回新的字符串。 拼接字符串
console.log(str+str1);
console.log(str.concat(str1));
console.log(str);//hello
// indexOf() 返回某个指定的字符串值在字符串中首次出现的索引。不存在是返回 -1。
console.log(str.indexOf("a"));// -1
console.log(str.indexOf("l"));// 2
console.log(str);//hello
// lastIndexOf() 从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。不存在是返回 -1。
console.log(str.lastIndexOf("l"));// 3
console.log(str);//hello
// slice(起始的索引,结束的索引) 提取字符串的片断,并在新的字符串中返回被提取的部分。 留头不留尾
console.log(str.slice(1,2));//e
console.log(str);//hello
// valueOf() 返回某个字符串对象的原始值。
console.log(str.valueOf());// hello
// toString() 返回一个字符串。
console.log([1,2,3].toString());
console.log("China".toString());
console.log({age:10}.toString());
// charAt(索引) 返回在指定位置的字符。
console.log(str1.charAt(0));
var str2="一丁二三四五六七八九十";
// charCodeAt() 返回在指定的位置的字符的 Unicode 编码。
console.log(str2.charCodeAt(1));
// fromCharCode() 将 Unicode 编码转为字符。
console.log(String.fromCharCode(19970));
// split(匹配条件) 把字符串分割为字符串数组。 字符串转换为数组
console.log(str3.split(""));
console.log(str3.split("a"));
document.getElementById("btn").onclick=function(){
var val=document.getElementById("text").value;
val=val.split("").reverse().join("");
document.getElementById("text").value=val;
}
// substr(起始的索引,长度) 从起始索引号提取字符串中指定数目的字符。
console.log(str3.substr(1,5));
console.log(str3);
// substring(起始的索引,结束的索引) 提取字符串中两个指定的索引号之间的字符。
console.log(str3.substring(1,5));
console.log(str3);
// toLowerCase() 把字符串转换为小写。
console.log(str3.toLowerCase());
// toUpperCase() 把字符串转换为大写。
console.log(str3.toUpperCase());
// toLocaleLowerCase() 根据本地主机的语言环境把字符串转换为小写。
console.log(str3.toLocaleLowerCase());
// toLocaleUpperCase() 根据本地主机的语言环境把字符串转换为大写。
console.log(str3.toLocaleUpperCase());
// trim() 去除字符串两边的空白
console.log(" hello ");
console.log(" hello ".trim());
2.用于正则表达式的方法
var str3="aaBBccddefgaaaa";
// match() 查找找到一个或多个正则表达式的匹配。
console.log(str3.match("a"));
console.log(str3.match(/a/g));
// search() 查找与正则表达式相匹配的值。 第一次出现的索引
console.log(str3.search(/b/g));//0
// replace(被替换的字符,新的字符) 在字符串中查找匹配的子串, 并替换与正则表达式匹配的子串。
console.log(str3.replace("a","A"));
console.log(str3);//aabbccddefgaaaa
// var reg=/A/g;
console.log(str3.replace(/a/g,"A"));
3.ES6新增的方法
// includes() 查找字符串中是否包含指定的子字符串。
console.log(str.includes("z"));//false
// repeat() 复制字符串指定次数,并将它们连接在一起返回。
console.log(str.repeat(30));
// startsWith() 查看字符串是否以指定的子字符串开头。
console.log(str.startsWith("he"));//true
视频讲解链接:
https://www.bilibili.com/video/BV1TC4y1p7U5/