博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ECMAScript 6 字符串的扩展
阅读量:5149 次
发布时间:2019-06-13

本文共 1091 字,大约阅读时间需要 3 分钟。

1、字符的Unicode表示法

   ① JavaScript允许采用\uxxxx的形式来表示一个字符,其中xxxx表示字符的Unicode码点。

        但是,这种表示方法有一个局限性,它的码点只能在\u0000到\uFFFF之间。超出这个范围的字符,必须用双字节的形式表示。如下图所示:

    ② ES6 对这一点做出了改进,只要将码点放入大括号,就能正确解读该字符。

        下图所示,最后一个例子表示,大括号表示法与四字节的UTF-16编码是等价的。

    ③ ES6改进之后,在JavaScript中共有6中方法可以表示一个字符

2、codePointAt()

      JavaScript 内部,字符以 UTF-16 的格式储存,每个字符固定为2个字节。对于那些需要4个字节储存的字符(Unicode 码点大于0xFFFF的字符),JavaScript 会认为它们是两个字符。

      ES6提供了codePointAt()方法,能够正确处理4个字节储存的字符,返回一个字符的码点。

       注意:codePointAt()方法返回的是一个十进制的数字,如果要十六进制,可以使用toString()方法转换。

      codePointAt方法是测试一个字符由两个字节还是由四个字节组成的最简单方法。

3、includes(), startsWith(), endsWith() 

       JavaScript只有indexOf()方法,可以用来确定一个字符串是否包含在另一个字符串中。ES6又提供了三折肱新方法。

  • includes():返回布尔值,表示是否找到了参数字符串。
  • startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。
  • endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。

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

      上面代码表示,使用第二个参数n时,endsWith的行为与其他两个方法有所不同。它针对前n个字符,而其他两个方法针对从第n个位置直到字符串结束。

 

 

-------------------------------------------------------------------------------------------------未完待续-------------------------------------------------------------------------------------------------------------

转载于:https://www.cnblogs.com/wangyfax/p/9988296.html

你可能感兴趣的文章
百度前端学院-基础学院-第20到21天
查看>>
c#之冒泡排序的三种实现和性能分析
查看>>
订单删除,增加订单,巩固表单特定用法
查看>>
Linux命令之---nl
查看>>
nginx + uwsgi 跑python应用
查看>>
asp.net通过基类实现统一脚本和样式的管理
查看>>
『转』Bitdefender Internet Security 2013 – 免费1年
查看>>
pytorch搭建神经网络-第一篇博客
查看>>
Sublime Text 3 快捷键总结(拿走)
查看>>
return,break与continue的区别
查看>>
快排的递归和非递归C++
查看>>
微信公众平台开发(11) 发送客服消息
查看>>
MongoDB之$关键字及$修改器$set $inc $push $pull $pop
查看>>
关于对象
查看>>
CGo中传递多维数组给C函数
查看>>
android 调用系统照相机拍照后保存到系统相册,在系统图库中能看到
查看>>
ActionScript 3.0 宝典(中文PDF下载)
查看>>
Swift入门篇-集合
查看>>
Taffy自动化测试框架Web开发,Python Flask实践详解
查看>>
2019.07.15 年中备忘
查看>>