- 前言
- 关于 ECMASCRIPT 发展史和现状
- ES6 带来的重大特性
- ES2016(ES7)的改进
- ES2017(ES8)带来的重大新特性
- ES2018(ES9)带来的重大新特性
- JavaScript 编码风格指南
- JavaScript 词法结构(构建块)
- JavaScript 变量
- JavaScript 数据类型
- JavaScript 表达式
- 原型继承
- 如何使用 JavaScript 中的 Classes(类)
- JavaScript 异常处理
- JavaScript 中的分号(;)
- JavaScript 中的引号
- JavaScript 字面量模板(Template Literals)指南
- JavaScript 中的 function(函数)
- JavaScript 箭头函数(Arrow Function)
- JavaScript 中的闭包(Closures)
- JavaScript 数组(Arrays)
- JavaScript 中的循环(Loops)
- JavaScript 中的事件(Events)
- JavaScript 中的事件循环(Event Loop)
- JavaScript 异步编程和回调
- 理解 JavaScript 中的 Promises
- 用 async 和 await 编写现代 JavaScript 异步代码
- JavaScript 中的 循环(Loops) 和 作用域(Scope)
- JavaScript 定时器 setTimeout() 和 setInterval()
- JavaScript 中的 this
- JavaScript 严格模式(Strict Mode)
- JavaScript 中的 立即执行函数表达式(IIFE)
- JavaScript 中的数学运算符
- JavaScript 中的 Math 对象
- 介绍 ES Modules(模块)
- 介绍 CommonJS
- JavaScript 术语表
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
ES2016(ES7)的改进
ES7,正式名称为 ECMAScript 2016 ,于 2016 年 6 月完成。
与 ES6 相比,ES7 是 JavaScript 的一个小版本,仅包含两个功能:
- Array.prototype.includes
- 求幂运算符
Array.prototype.includes()
此功能引入了更易读的语法,用于检查数组是否包含元素。
使用 ES6 和更低版本,要检查数组是否包含某个元素项,您必须使用 indexOf
,它检查数组中的索引,如果元素不存在则返回 -1
。
由于 -1
被求值为真值,因此您不能这样做:
if (![1,2].indexOf(3)) { console.log('Not found') }
借助 ES7 中引入的这一新功能,我们可以这样做:
if (![1,2].includes(3)) { console.log('Not found') }
关于这个特性请阅读 ES2016 新特性:Array.prototype.includes 了解更多信息。
求幂运算符(**)
求幂运算符 **
等价于 Math.pow()
,但是它被引入语言本身,而不是库函数。
Math.pow(4,2)== 4 ** 2
这个特性对于数学密集型的 JavaScript 应用程序来说是一个很好的补充。
**
运算符在许多语言中都是标准化的,包括 Python,Ruby,MATLAB,Lua,Perl 等等。
关于这个特性请阅读 ES2016 新特性:求幂运算符(**) 了解更多信息。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论