es6字符串的扩展

时间: 2019-04-21阅读: 664标签: 字符串

1. 字符的 Unicode 表示法

JavaScript 中允许采用 uxxxx的形式表示一个字符,其中xxxx表示字符的Unicode码点。如下
"\u0061"
这种 表示有区间 只能在 0000 ~ FFFF之间,如果超出则需要用双字节的的形式表示
"\u20BB7\uDFB1"
在ES6中,对字符串的写法做出了改变。改为将码点放入大括号中,就能正确读取该字符,如下:
"\u{20BB7}" // 吉


2. codePointAt()

JavaScript内部,字符以 UTF-16的格式存储,每个字符固定为2个字节。对于需要4个字节储存的字符,JavaScript会认为它们是两个字符。如下:
var s = "吉"

s.length // 2
s.charAt(0) // ''
s.charAt(1) // ''
s.charCodeAt(0) // 55362
s.charCodeAt(1) // 57271

上面代码中汉字吉 需要4个字节存储,但是JavaScript不能正确处理,字符串长度误判为2,而且charAt 方法无法读取字符,charCodeAt 只能返回前面两个字节和后面两个字节的值,ES6 提供了 codePointAt 方法能够正确处理4个字节存储的字符,返回一个字符的码点,如下:

let s = '吉a';

s.codePointAt(0) // 134071
s.codePointAt(1) // 57271
codePointAt() 方法是测试一个字符由两个字节还是四个字节组成的最简单的方法


3. String.fromCodePoint()

ES5 提供了 String.fromCharCode 方法 用于从码点返回对应字符,但是不能识别32位的UTR-16字符,ES6提供了 Sring.fromCodePoint() 方法 可以识别大于32位的。如果有多个参数则将合并。如下:
String.fromCodePoint(0x20BB7)
// "
站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/2960

关闭

Js实现字符串压缩

字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母

js中String.prototype实现string过滤空格_字符串空格过滤

我们都知道prototype可以向对象上添加属性和方法,语法如下:object.prototype.name=value。这篇文章就是利用prototype,为字符串扩展过滤空格的方法

javascript如何设置字符串首字母大写?

给出一个字符串,如何确保字符串的首字母都大写?下面本篇文章就来给大家介绍一下使用javascript设置首字母大写的方法,希望对大家有所帮助。在javascript中,可以使用slice()方法、toUpperCase()方法和toLowerCase()方法来设置首字母大写

js 字符串比较大小

数值是合乎常理的操作,其实字符串也可以比较大小;两个字符串比较大小,比较的是组成它们字符的ASCII码的大小,比较原则如下:比较的是字符的ASCII码的大小。

javascript中如何截取字符串?

JavaScript中截取字符串有三种方法,分别是substring(),substr(),split()。下面本篇文章就来给大家介绍一下它们的使用方法,希望对大家有所帮助。

Js实现LeetCode49. 字母异位词分组

给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。说明:所有输入均为小写字母。不考虑答案输出的顺序。

javascript字符串进行编码的方法:escape编码、encodeURI编码、encodeURIComponent编码

js对字符串进行编码的方法。ECMAScript v3 反对使用escape方法,用 encodeURI() 和 encodeURIComponent() 替代它。encodeURI对URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的。

ES6中的字符串(模板字符串、字符串新方法)

字符串和数组类似,可以一一对应赋值。字符串有length属性,可以对它解构赋值。使用反引号(``)代替普通的单引号或双引号。使用${expression}作为占位符,可以传入变量。

比较两个带退格键的字符串

从后往前遍历,记录要忽略掉的字符;使用栈,从前往后处理;使用归并排序合并数组的形态,从后往前比较

es6中新增的字符串方法

es6中新增的字符串方法:字符串模板用法${变量名}、字符串查找方法string.includes(要找得字符串)、检查字符串是否已xxx开头、字符串重复方法string.repeat(次数)、字符串填充string.padStart

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!