ES6中字符串的新增方法梳理

1.String.fromCodePoint();

String,fromCodePoint()方法可以认为是对String.fromCharCode()方法的扩展,这两个方法的共同点在于都是用于Unicode码点返回对应字符,但是差异在于String.fromCharCode()该方法不能识别大于0xFFFF的码点,ES6中提供了String.fromCodePoint()就很好的弥补了String.fromCharCode()的不足。它可以识别码点大于0xFFFF的对应字符。

上面是在chrome控制台打印的结果,很明显String.fromCodePoint()中的方法可以正确的识别‘0x20BB7“的字符,而String.fromCharCode()会舍弃掉掉溢出的高位2变成解析‘0x0BB7’unicode码点。

2.String.raw();

ES6 还为原生的 String 对象,提供了一个raw()方法。该方法返回一个斜杠都被转义(即斜杠前面再加一个斜杠)的字符串,往往用于模板字符串的处理方法。

如果是作为方法的话第一个参数是对象 而且要有raw参数,如果没有会报错,因为该方法可以看作是专门的模板字符串的标签函数,它的第一个参数是具有raw属性的对象。

3.codePointAt();

ES6提供了该方法可以认为是对charCodeAt()方法的补充。在javascript中,字符是以UTF-16的格式存储的,每个字符固定为两个字节,如果是用四个字节存储的字符javascript就会认为它的长度为2.

以上可以看出??字的unicode编码大于0xffff所以长度为2,codePointAt()方法和charCodeAt()方法都是可以返回字符的十进制码点,codePointAt()方法可以返回32位的UTF-16字符的码点。charCodeAt()方法只能返回16位的。

4.includes()

返回布尔值,表示是否找到了参数字符串。

5.startWith()

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

6.endsWith()

返回布尔值,表示参数字符串是否在原字符串的尾部。

7.repeat()

repeat方法返回一个新字符串,表示将原字符串重复n次。该方法的参数为大于 -1的自然数,

参数n带有小数的时候 会向下取整,如果参数为字符串会先转为数字,但n为-1到0之前的数字的时候会转为0。

8.padStart()

如果某个字符串不够指定长度,会在头部补全。

9.padEnd()

如果某个字符串不够指定长度,会在尾部补全。

10.trimStart()和trimEnd()

以上两个方法的行为和trim()方法的行为一致都是用户消除字符串的空格,会返回新的字符不影响原来的字符,trimStart()方法是消除字符串头部的空格,trimEnd()方法是用于消除字符串尾部的空格。

11.matchAll()

matchAll()方法返回一个正则表达式在当前字符串的所有匹配,返回的匹配是一个遍历器(Iterator),而不是数组。。

原文地址:https://www.cnblogs.com/lin494910940/p/12360942.html

时间: 2024-10-07 12:57:05

ES6中字符串的新增方法梳理的相关文章

java中字符串切割的方法总结

StringTokenizer最快 ,基本已经不用了,除非在某些需要效率的场合.Scanner最慢. String和Pattern速度差不多.Pattern稍快些. String和Pattern的split 方法效率相当,常用 public   static   void  main(String [] args){ long  start = System.currentTimeMillis(); for ( int  i= 0 ;i< 100000 ;i++){ test1(); } lon

ES6 第五章 字符串的新增方法 具体参照 http://es6.ruanyifeng.com

1.FormCodePoint 对象方法 用于从 Unicode 码点返回对应字符,可以识别原来es5不能识别的大于0xFFFF的码点. String.fromCodePoint(0x20BB7) // "??"2.codePointAt 实例方法 let s = '??a'; for (let ch of s) { console.log(ch.codePointAt(0).toString(16)); } // 20bb7 // 613.string.raw() 转译反斜杠 对象方

ES6中数组的新方法

数组的扩展 1.1扩展运算符 1.1.1:... 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. <body> <div></div> <div></div> <div></div> <div></div> </body> <script type="text/javascript"> c

字符串的新增方法

//ES5 String.fromCodePoint() 用于从Unicode码点返回对应字符 但不能识别码点大于0xFFFF //ES6中 可以识别大于0xFFFF的字符 // ES6中 新增加String对象的String.raw()方法 String.raw`Hi\n${2 + 3 }!`//该方法返回一个斜杠都被转义的字符串 //'Hi\\n5 // 若原字符串的斜杠已经转义 String.raw()会进行再次转义 String.raw`Hi\\n` //返回'Hi\\\\n // St

ES6 中字符串的扩展

1. 字符的Unicode表示法 JavaScript允许采用 \uxxxx 形式表示一个字符,其中 xxxx 表示字符的 Unicode 码点. "\u0061" // 表示小写字母"a" 但是这种表示法只限于码点在 \u0000-\uFFFF 之间的字符,有些字符的 Unicode 编码超出了这个范围,那么就必须使用2个双字节的形式表示. "\uD842\uDFB7" // "??" 注意不是吉祥的"吉"

ES6中字符串新增方法

1.重复输出字符串 string.repeat() <script type="text/javascript"> var str = "by"; console.log(str.repeat(3));//bybyby console.log(str.repeat(2.7));//byby console.log(str.repeat(0));//空串 console.log(str.repeat(-3));//error </script>

JavaScript中字符串转Json方法小记

例如: JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象:var obj= { "name": "cxh", "sex": "man" }; 1.在js中把json字符串转json对象的方法不止一种,最常见的一种方式如下,使用到eval方法: 1 var jsonStr = '

python中字符串内置方法整理

下表是在通过网络视频学习时,别人整理的.放在此处,以便以后需要. capitalize() 把字符串的第一个字符改为大写 casefold() 把整个字符串的所有字符改为小写 center(width) 将字符串居中,并使用空格填充至长度 width 的新字符串 count(sub[, start[, end]]) 返回 sub 在字符串里边出现的次数,start 和 end 参数表示范围,可选. encode(encoding='utf-8', errors='strict') 以 encod

shell中字符串的截取方法、cut基本用法

一.八种基本字符截取方法: 1.使用 # 号操作符.从左边删除第一次出现 substr 左边字符(包括substr ),保留右边字符. 用法为 #*substr 例如: 即删除从左边开始到第一个"//"及其左边所有字符 2.使用 ## 号操作符.从左边删除最后一次出现substr 左边字符(包括substr ),保留右边字符. 用法为 ##*subst 例如: 即删除最后出现的"/"及其左边所有字符 3.使用 % 号操作符.从右边删除第一次出现 substr 右边字