首页 > 其他分享 >【ES6】字符串的拓展

【ES6】字符串的拓展

时间:2023-01-16 20:35:30浏览次数:40  
标签:ES6 repeat 字符 拓展 Str 字符串 codePointAt


【ES6】字符串的拓展

  • ​​一、为什么ES6要进行字符拓展?​​
  • ​​二、ASCLL码、Unicode编码、UTF-8编码的异同​​
  • ​​三、ES6新增的字符串接口​​
  • ​​1)codePointAt()​​
  • ​​2)codePointAt()​​
  • ​​3)includes(),startsWith(),endsWith()​​
  • ​​4)repeat()​​
  • ​​5)padStart(),padEnd()​​
  • ​​6)字符串的遍历器接口​​
  • ​​7)模板字符串​​
  • ​​查看更多ES6教学文章:​​
  • ​​参考文献​​

引言:ES6加强了对Unicode的支持,并拓展了字符串对象。


一、为什么ES6要进行字符拓展?

        一般地,在​​JavaScript​​​中,字符以UTF-16的格式储存,每个字符固定为2个字节,也就是一个字。一个字的范围是​​0x0000-0xFFFF​​​(16进制)。例如字符​​a​​​就是一个字符,含有2个字节,它的16进制码为​​0x0061​​​。
        在​​​JS​​​中,允许采用​​\uxxxx​​​的形式来表示一个字符,其中​​xxxx​​​就是该字符的16进制值。
        我们知道,一个字的表示范围是​​​0x0000-0xFFFF​​​,当我们想表示大于​​0xFFFF​​的字符的时候,例如:

var a="\u20bb7";  //0x20bb7>0xffff
console.log(a); // 7

        出现以上输出7的情况是因为,​​JS​​​中,以​​"\uxxxx"​​​为一个字符读取,所以​​"\u20bb7"​​​被读取成了​​"\u20bb"+“7"​​​这两个字符,因为在​​JS​​​中,​​”\u20bb"​​​不可打印,所以​​a​​​只打印出来了​​7​​​,事实上,变量​​a​​已经是拥有2个字符的字符串了。

var b="\uD842\uDFB7";  //"\uD842\uDFB7"的码值与"\u20bb7"等价
console.log(a); //

标签:ES6,repeat,字符,拓展,Str,字符串,codePointAt
From: https://blog.51cto.com/u_15942590/6010774

相关文章

  • 【ES6】 let与const详解
    【ES6】let与const详解ES6,全称为ECMAScript6。ES6与js的关系是:前者是后者的规格,后者是前者的实现。换句话说,ES是js的国际化版本,js是ES的子集。1.letlet命令和var命令是差......
  • 【ES6】数值的拓展
    【ES6】数值的拓展​​二、Number.isFinite(),Number.isNaN()​​​​三、Number.parseInt(),Number.parseFloat()​​​​四、Number.isInteger​​​​五、Number.EPSILON​......
  • 【ES6】数组的拓展
    【ES6】数组的拓展​​一、Array.from()方法​​​​二、Array.of()方法​​​​三、数组的copyWithin()方法​​​​四、数组的find()和findIndex()方法​​​​五、数组的......
  • 【ES6】ES6编程规范 编程风格
    【ES6】ES6编程规范编程风格​​一、定义变量的规范​​​​二、字符串​​​​三、对象​​​​四、数组​​​​五、函数​​​​查看更多ES6教学文章:​​​​参考文献​......
  • 【ES6】Module模块详解
    【ES6】Module模块详解​​一、Module的由来​​​​二、严格模式​​​​三、export命令​​​​四、import命令​​​​查看更多ES6教学文章:​​​​参考文献​​引言:由于......
  • 【ES6】JS类的用法class
    【ES6】JS类的用法class​​一、概述​​​​二、构造函数constructor​​​​三、静态方法与静态变量​​​​查看更多ES6教学文章:​​​​参考文献​​引言:由于JS之前一直......
  • 【ES6】异步操作和async函数
    【ES6】异步操作和async函数​​一、基本概念​​​​二、回调函数​​​​三、Promise​​​​四、async函数​​​​查看更多ES6教学文章:​​​​参考文献​​引言:ES6新增......
  • 【ES6】Generator函数详解
    【ES6】Generator函数详解​​一、Generator函数简介​​​​基本概念​​​​函数写法​​​​yield关键字介绍​​​​二、next方法的参数​​​​三、for...of循环​​​......
  • 【ES6】Promise对象详解
    【ES6】Promise对象详解​​一、Promise对象的含义​​​​二、Promise对象的用法​​​​三、Promise对象的几个应用【重点】​​​​1、时间延迟函数​​​​2、图片异步......
  • 【ES6】JS的Set和Map数据结构
    【ES6】JS的Set和Map数据结构​​一、Set​​​​1、基本用法​​​​2、4种操作方法​​​​3、4种遍历方法​​​​4、Set的应用​​​​1)Set转化为数组​​​​2)去除数组......