博客
关于我
ES6之字符串扩展
阅读量:522 次
发布时间:2019-03-07

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

ES6对字符串扩展了一些功能,开发过程用到的不多,还有一些是Unicode的,这边就不仔细说那些,简单提一下ES6对字符串扩展了哪些。

字符的Unicode表示法做出了改进

提供了codePointmentAt能够正确处理4个字节存储的字符

ES6 提供了String.fromCodePoint方法,可以识别大于0xFFFF的字符,正好与codePointAt方法相反

ES6 为字符串添加了遍历器接口,使得字符串可以被for…of循环遍历,可以识别大于0xFFFF的码点

normalize()方法,用来将字符的不同表示方法统一为同样的形式,这称为 Unicode 正规化。

includes(), startsWith(), endsWith(),这几个方法是开发中可以用得上,常用的indexOf返回的是所在的index,而这几个方法可以直接返回布尔值:

let str = ‘Hello world!’;

console.log(str.startsWith(‘H’)) // true
console.log(str.endsWith(’!’)) // true
console.log(str.includes(‘o’)) // true
console.log(str.indexOf(‘o’)) // 4

repeat方法返回一个新字符串,表示将原字符串重复n次。参数如果是小数,会被取整。参数是负数或者Infinity,会报错,其他是字符串等情况有处理,但是希望不要出现,也就不说了:

let str = ‘Hello’;

console.log(str.repeat(2)) // HelloHello

padStart(),padEnd(),padStart()用于头部补全,padEnd()用于尾部补全。这有一些规则,需要使用的时候可以去查一下,这边简单使用:

console.log(‘ab’.padStart(8,‘cd’))//cdcdcdab

console.log(‘ab’.padEnd(9, ‘cd’))//abcdcdcdc

matchAll方法返回一个正则表达式在当前字符串的所有匹配。

模板字符串,这也是使用频率很高的一个,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。模板字符串中嵌入变量,需要将变量名写在${}之中。大括号内部可以放入任意的 JavaScript 表达式,可以进行运算,以及引用对象属性。模板字符串之中还能调用函数。模板字符串甚至还能嵌套。

模板编译和标签模板还有String.raw方法,这三个在我觉得应该不会使用,但是可以知道一下有这个东西。

最后就是字符串模板是有限制的,只不过要是我们只是普通使用,就可以不用理会。

欢迎关注Coding个人笔记 公众号

转载地址:http://gqnnz.baihongyu.com/

你可能感兴趣的文章
Node-RED中建立TCP服务端和客户端
查看>>
Node-RED中建立Websocket客户端连接
查看>>
Node-RED中建立静态网页和动态网页内容
查看>>
Vue3+Element-ul学生管理系统(第二十二课)
查看>>
Node-RED中怎样让网站返回JSON数据
查看>>
Node-RED中根据HTML文件建立Web网站
查看>>
Node-RED中解析高德地图天气api的json数据显示天气仪表盘
查看>>
Node-RED中连接Mysql数据库并实现增删改查的操作
查看>>
Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
查看>>
Node-RED中配置周期性执行、指定时间阶段执行、指定时间执行事件
查看>>
Node-RED安装图形化节点dashboard实现订阅mqtt主题并在仪表盘中显示温度
查看>>
Node-RED怎样导出导入流程为json文件
查看>>
Node-RED简介与Windows上安装、启动和运行示例
查看>>
Node-RED订阅MQTT主题并调试数据
查看>>
Node-RED通过npm安装的方式对应卸载
查看>>
node-request模块
查看>>
node-static 任意文件读取漏洞复现(CVE-2023-26111)
查看>>
Node.js 8 中的 util.promisify的详解
查看>>
node.js debug在webstrom工具
查看>>
Node.js Event emitter 详解( 示例代码 )
查看>>