应用广泛的语言ECMAScript 2018来了,新特性都在这里
原文:What’s new in ECMAScript 2018
作者:Paul Krill
翻译:不二
译者注:ECMAScript是应用广泛的语言,它常常被称为JavaScript或JScript,但实际上后两者是ECMAScript标准的实现和扩展,现在ECMAScript 2018来了,我们来看看它的新特性。
ECMAScript的两项新特性已确定,另外四项正在考虑中。
作为JavaScript的标准规范,ECMAScript有望在6月发布新的版本。
目前为止,已经确定了纳入ECMAScript 2018规范的两项提案,“这两项都是相当基本的功能,而不是主要的特性,”Mozilla的高级软件工程师Zibi Braniecki说,他参与了ECMAScript的开发。
这两项提案包括:
- 取消模板字面量的限制,以支持语言的嵌入,包括特定领域的语言(DSLs)。当前对免责条款的限制使这成为一个问题。这次修改可以清除字面量的行为,让它们被运用于DSLs,这样程序员就可以在需要的时候创建自己微语言。
注:模板字面量(Template literals) 是允许嵌入表达式的字符串字面量。可以使用多行字符串和字符串插值功能。它们在ES2015规范的先前版本中被称为“模板字符串(template strings)”。
- 为正则表达式添加s(dotAll)标志,以提供一致的行为。作者Axel Rauschmeyer说,该功能的目的是解决在正则表达式中,点(.)不匹配行终结者字符的限制,他专注于JavaScript研究。但s标志改变了这一点,它将在选择使用的基础上进行操作,因此现有的正则表达式模式不会受到影响。
Braniecki说,还会对其他四项提案进行考虑,它们将使JavaScript编程更容易,这四项提案包括:
Regexp(正则表达式)在后行断言中,利用环视修复了缺点,环视是零宽断言,可以匹配字符串而没有任何消耗。目前,环视断言可用于正向预搜索,而不能用反向预搜索。通过后行断言,开发人员将能够确保模式是否已存在;例如,在不捕捉美元符号的情况下,匹配一美元的金额。
Regexp Unicode属性转义,为开发人员提供了一种更好的访问Unicode字符属性的方法。属性转义将以\p{…}和p{…}的形式添加进来。
Promise.prototype.finally,当程序员未关闭套接字或未清理内存时,可以编写清除代码。
更新Function.prototype.toString功能,toString()方法将返回一个表示函数源代码的字符串。
Braniecki预计今年的ECMAScript 2018将在浏览器中得以实现,并且已经有一些实现了。
Braniecki认为2018年的ECMAScript将是一个相当保守的版本,明年ECMAScript将会有更强大的能力,并将讨论异步迭代器和扩展类。
获取ECMAScript 2018规范的地方
可以在GitHub上阅读规范草案,还有一份建议清单。
应用广泛的语言ECMAScript 2018来了,新特性都在这里相关推荐
- 常用的ECMAScript 6以后的新特性
Study Notes 本博主会持续更新各种前端的技术,如果各位道友喜欢,可以关注.收藏.点赞下本博主的文章. let 与块级作用域 let 语句声明一个块级作用域的本地变量,并且可选的将其初始化为一 ...
- ECMAScript 6的一些新特性
ES6非常好用,但是不兼容edge以下的浏览器 先看下let声明变量的特点 <!DOCTYPE html> <html lang="en"> <hea ...
- c++语言自定义操作符,C++11新特性之自定义字面量
1.示例 C++11新标准中引入了用户自定义字面量,也叫自定义后缀操作符,即通过实现一个后缀操作符,将申明了该后缀标识的字面量转化为需要的类型.考察如下代码: long double operator ...
- ECMAScript 2019(ES10) 的新特性总结
快速通道: ES6.ES7.ES8.ES9.ES10.ES11.ES12.ES13新特性大全 老规矩,先纵览下 ES2019 的新功能: Array.flat()和Array.flatMap():数组 ...
- ECMAScript 2016(ES7) 的新特性总结
快速通道: ES6.ES7.ES8.ES9.ES10.ES11.ES12.ES13新特性大全 老样子,先纵览下 ES2016 的新功能,ES2016添加了两个小的特性来说明标准化过程: 数组inclu ...
- ECMAScript 2016(ES7)新特性简介
简介 自从ES6(ECMAScript 2015)在2015年发布以来,ECMAScript以每年一个版本的速度持续向前发展.到现在已经是ECMAScript 2020了. 每个版本都有一些新的特性, ...
- 解读Go语言的2018:怎么就在中国火成这样了?
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 本篇文章是 Go 语言 2018 年终盘点,力求客观.深入分析 2018 年 Go 语言的技术发展现状,同时对明年可能的 ...
- 全国计算机java语言程序设计_2018年全国计算机等级考试二级教程:Java语言程序设计(2018年版)...
  [导读]: 2018年全国计算机等级考试二级教程:Java语言程序设计(2018年版),更多计算机等级考试用书.考试内容和考试模拟试题,请访问易考吧计算机等级网(h ...
- 全国计算机等级考试python教材.pdf_全国计算机等级考试二级教程Python语言程序设计(2018年版).PDF...
全国计算机等级考试二级教程Python语言程序设计(2018年版).PDF 全国计算机等级考试二级教程 Python语言程序设计 (2018年版) [第1章] 程序设计基本方法 考纲考点 n Pyth ...
最新文章
- 魅族手机使用鸿蒙系统,魅族宣布接入华为鸿蒙系统,这应该是黄章最正确的决定...
- Ubuntu下在线安装mysql
- Java的新项目学成在线笔记-day10(一)
- 几个方便编程的C++特性
- 复合机 涂布机_涂布复合机适用的范围在那些地方?
- Chrome的vimium插件的使用笔记
- Leetcode--837. 新21点(java)
- Rust 1.7.0 处理命令行參数
- Java实现MD5加盐加密算法
- 连点4次android版本,连点器极速版下载-连点器快速版v4.0.8 安卓版 - 极光下载站...
- java 两个图片相似度_JAVA比较两张图相似度
- 对于分布式消息队列我有话说
- 常见神经网络结构拓扑图
- easyScholar简介
- UEFI开发探索82- YIE002USB开发板(05 制作HID设备)
- C#学习笔记(五)CSharp操作符-基本操作符(一)
- 目标检测---以制作yolov5的数据集为例,利用labelimg制作自己的深度学习目标检测数据集(正确方法)
- 基于YOLOV3的安全帽检测
- 如何让搜索引擎收录我们的博客
- 面向接口编程,接口是什么,有什么作用?