字符串的扩展

1.字符的Unicode表示法

js允许采用uxxxx形式表示一个字符,其中xxxx表示字符的Unicode码点

但是这种表示方法只限于u0000~uFFFF之间的字符,超出这个范围的字符,必须用2个双字节的形式表达

js共有六种方法表示一个字符

1    "z"==="z" ;
2    "172"==="z" ;
3    "x7A"==="z" ;
4    "u007A"==="z" ;
5    "u{7A}"==="z" ;

2.在js内部,字符以UTF-16的格式存储,每个字符固定为2个字节。对于那些需要四个字节存储的字符(码点大于0xFFFF的字符),js认为他们是2个字符

从字符串某个位置返回对应的Unicode码点

原版:string.charCodeAt(index)只能处理 2 字节的字符

升级版:string.codePointAt(index)可以处理 4 字节的字符

for循环无法正确识别4个字节的字符所在的正确位置,可以用for...of循环来代替

给定一个Unicode码点,返回对应的字符串对象

原版:String.from.Char.Code(Unicode码点)               识别2个字节的字符

升级版:String.fromCodePoint(Unicode码点)             可以识别 4 个字节的字符

返回字符串给定位置的字符

原版:string.charAt(index)

升级版:string.At(index)

normalize()用来将字符的不同表示方法,统一为同样的形式

字符串查找方法

string.includes(string,index)从某个位置开始查找查找是否有对应的字符串

string.startsWith(string,index)是否在某个位置开始的字符串

string.endsWith(string.index)是否在某个位置结束的字符串

字符串重复方法

string.repeat(numer)返回一个新的字符串,将原字符串重复n次

字符串补全长度方法

string.padStart(number,string)指定字符串长度,不够的用参数字符串从开头补全

string.padEnd(number,string)指定字符串长度,不够的用参数字符串从结尾补全

用途:补全指定位数,提示字符串格式

模板字符串

用反引号标识,可以当做普通字符串,多行字符串,可在字符串中嵌入变量用${variable},里面也可以放js表达式,模板里用了反引号需要在前面加上进行转译

标签模板

标签模板不是模板,而是函数的一种调用方式,标签指的是函数,模板字符串是参数

模板字符串中不是变量的字符串当做数组的一部分

原文地址:https://www.cnblogs.com/donutkiki/p/11589048.html