深入理解ES6——字符串和正则表达式

xiaoxiao2021-02-28  27

1.    ES6新增了codePointAt()方法,接受编码单元的位置而非字符位置作为参数,返回与字符串中给定位置对应的码位,即一个整数值。

   与codePointAt()方法相反,String.formCodePoint()方法根据指定的码位生成一个字符。

2.    ES6新增normalize()方法,提供Unicode的标准化模式,接受一个可选的字符串参数,指明应用某种Unicode标准化形式。

   注:在对比字符串之前,一定先把它们标准化为同一种形式。

3.    正则表达式的u修饰符:当一个正则表达式添加u修饰符时,它就从编码单元操作模式切换为字符模式,如此一来正则表达式就不会视代理对为两个字符,从而完全按照预期正常运行。

4.    ES6新增includes()方法,如果在字符串中检测到指定文本则返回true,否则返回false。

   ES6新增startWith()方法,如果在字符串的起始部分检测到制定文本则返回true,否则返回false。

   ES6新增endsWith()方法,如果在字符串的结束部分检测到指定文本则返回true,否则返回false。

   以上三个方法都接受两个参数:第一个参数指定要搜索的文本,第二个参数是可选的,指定一个开始搜索的位置的索引值。如果指定了第二个参数,则includes方法和startWith方法会从这个索引值的位置开始匹配,endsWith方法则从这个索引值减去欲搜索文本长度的位置开始正向匹配,对字符逐个进行比较。如果不指定第二个参数,则includes方法和startWith方法会从字符串起始位置开始匹配,endsWith方法从字符串末尾处开始匹配。

5.    ES6新增了repeat()方法,接受一个number类型的参数,表示该字符串的重复次数,返回值是当前字符串重复一定次数后的新字符串。

6.    y修饰符只有在调用exec()和test()这些正则表示式对象的方法时才会涉及lastIndex属性,调用字符串的方法match()不会触发粘滞行为。

7.    正则表达式中使用source和flags可以分别得到正则表达式的文本和修饰符。

8.    标签模板:https://www.cnblogs.com/sminocence/p/6832331.html

转载请注明原文地址: https://www.6miu.com/read-2800105.html

最新回复(0)