字符串方法
1、.length
length 属性返回字符串的长度
var txt = "Hello";
txt.length; // 5
2、.charAt(n)
返回字符串的第 n 个字符,如果不在 0~str.length-1之间,则返回一个空字符串。
var str = "javascript";
str.charAt(2); //'v'
str.charAt(12); //''
3、.charCodeAt(n)
可返回指定位置的字符的 Unicode 编码。
var str = "HELLO WORLD";
str.charCodeAt(0); // 72
4、.codePointAt(n)
ES6 提供了codePointAt方法,能够正确处理 4 个字节储存的字符,返回一个字符的码点。
let s = '𠮷a';
s.codePointAt(0) // 134071
s.codePointAt(1) // 57271
s.codePointAt(2) // 97
codePointAt方法的参数,是字符在字符串中的位置(从 0 开始)。上面代码中,JavaScript 将“𠮷a”视为三个字符,codePointAt 方法在第一个字符上,正确地识别了“𠮷”,返回了它的十进制码点 134071(即十六进制的20BB7)。在第二个字符(即“𠮷”的后两个字节)和第三个字符“a”上.
5、.fromCharCode
用于从码点返回对应字符,但是这个方法不能识别 32 位的 UTF-16 字符(Unicode 编号大于0xFFFF)。
String.fromCharCode(0x20BB7)
// "ஷ"
String.fromCharCode不能识别大于0xFFFF的码点,所以0x20BB7就发生了溢出,最高位2被舍弃了,最后返回码点0x0BB7对应的字符,而不是码点0x20BB7对应的字符。
6、indexOf()
查找一个字符串中,第一次出现指定字符串的位置。
7、replace()
用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
template = "${文字}" // template为类似形式的变量
template = template.substring(2, template.length-1); // 处理template变量中的$,提取出文字部分
echartsStr = echartsStr.replace(new RegExp('\\$\\{[' + template + ']+?\\}','g'),value); // 第一个\是用来转义的,变量需要写成[' + template + '],value可为变量或固定的字符串