ES 6 系列 - 对与常用对象的拓展 api

Posted FOR FREIHEIT

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES 6 系列 - 对与常用对象的拓展 api相关的知识,希望对你有一定的参考价值。

一、字符串的拓展

  es 6 加强了对于 Unicode 的支持。javascript 允许采用 \uxxxxx 的方式表示一个字符,其中 xxxx 表示字符的 Unicode 码点。所以这就有范围限制了(\u0000 ~ \uFFFF)。

 

  1. for ... of ...

    这个遍历器最大的优点是支持大于 \uFFFF 的码点,传统 for 循环则不支持。

 

  2. string.at(Number param) 与 string.charAt(Number param) -- 似乎还只是个提案,C\F 也得不到正确的值

    at() 支持大于 \uFFFF 的码点,如:

‘??‘.charAt(0)
"?"  // 乱码

‘??‘.at(0) // "??"

 

 

  3. include(),startsWith(),endsWith()

    es 5 只有 indexOf 来判断一个字符串是否包含另一个,es 6 另外提供了三个:

      - includes( String param [, Number param1] ) : 返回 boolean ,表示是否找到了参数字符串;

      - startsWith( String param [, Number param1] ) : 返回 boolean ,表示参数字符串是否在原字符串头部;

      - endsWith( String param [, Number param1] ) : 返回 boolean ,表示参数字符串是否在原字符串尾部;

    其中,第二个参数表示搜索位置。

let s = ‘Hello world!‘;

s.startsWith(‘world‘, 6) // true
s.endsWith(‘Hello‘, 5) // true
s.includes(‘Hello‘, 6) // false

     上例中, endsWith 是从原字符串尾部向头部开始查询,这点需要注意。

 



以上是关于ES 6 系列 - 对与常用对象的拓展 api的主要内容,如果未能解决你的问题,请参考以下文章

[js高手之路] es6系列教程 - Map详解以及常用api

es6 有哪些拓展

6. 数值的拓展

ECMAScript 6.0

ES10中的对象拓展

ES9对象和Promise的扩展