ES6 字符串与数值扩展

一:字符串扩展

1、字符Unicode表示法

     允许采用\uxxxx形式表示一个字符,但是这种表示法只限于码点在于\u0000到\uFFFF之间的字符,超出必须使用两个双字节的形式表示。

    或者放入大括号就可以解读 例如 \u{1F680}\uD83D\uDE80使用效果一样

2、codePointAt()

  能够正确处理4个字节储存的字符,返回一个字符的码点。

  codeointAt()方法的参数,是字符在字符串中的位置(从0开始)。返回的码点是十进制

3、formCodePoint()

   String.formCodePoint()将码点返回对应的字符 可以存在多个参数,他们会被合并成一个字符串进行返回。

4、字符串遍历器接口

    可以使字符串被 for。。。。of循环遍历

5 at()

  chartAt()返回的是字符串给定位置的字符,不能识别码点大于0xFFFF的字符,而且返回的是2个字节表示的字符。

  目前提出使用at()方法。需要引入第三方js才可以实现。

6 includes(),startsWith(),endsWith()

  includes():返回布尔值,表示是否找到了参数字符串

  startsWith():返回布尔值,表示参数字符串是否在原字符串的头部

  endsWith():返回布尔值,表示参数字符串是否在原字符串尾部

  上面三个方法都支持第二个参数,表示开始搜索的位置。

7、repeat()方法返回一个新字符串,表示原字符串重复n次

 'x'.repeat(3);//xxx

参数如果是小数,会被取整。如果是0到-1之间的小数,则等同于0.

  参数NaN等同于0

8、padStart(),padEnd() 如果字符串不够指定长度,会在头部或尾部补全。

 接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数用来补全字符串。

二:数值扩展

1、二进制和八进制表示法

二进制 0b(0B)  八进制 0O(0o)

如果需要将二进制与八进制转换成十进制,只需要使用Number 例如 Number(‘0b111’)//7

2、Number.isFinite(),Number.isNaN()

  isFinite()用来检查一个数值是否为有限的    如果参数类型不是数值,返回的一律是 false

isNaN只对于NaN才返回true,其余的一律返回false;

3、Number.parseInt(),Number.parseFloat()

4、Number.isTnterger

猜你喜欢

转载自my.oschina.net/kxhome/blog/1626899