ECMAScript 2016(ES7) 的新特性总结

简介: ECMAScript 2016(ES7) 的新特性总结

image.png

快速通道:

老样子,先纵览下 ES2016 的新功能,ES2016添加了两个小的特性来说明标准化过程:

  • 数组includes()方法,用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回true,否则返回false。
  • a ** b指数运算符,它与 Math.pow(a, b)相同。

Array.prototype.includes()

image.png

下面两个表达式是等价的:

list.includes(x)
// 等价于
list.indexOf(x) >= 0

接下来我们来判断数字中是否包含某个元素,ES7之前:

let arr = ['react', 'angular', 'vue'];
if (arr.indexOf('react') !== -1)
{
    console.log('react存在');
}

ES7 使用 includes() 验证数组中是否存在某个元素:

let arr = ['react', 'angular', 'vue'];
if (arr.includes('react'))
{
    console.log('react存在');
}

指数操作符

image.png

使用自定义的递归函数calculateExponent或者Math.pow()进行指数运算:

function calculateExponent(base, exponent)
{
    if (exponent === 1)
    {
        return base;
    }
    else
    {
        return base * calculateExponent(base, exponent - 1);
    }
}
console.log(calculateExponent(2, 10)); // 输出1024
console.log(Math.pow(2, 10)); // 输出1024

image.png

'使用指数操作符,使用指数运算符**,就像使用 +、- 等操作符一样:

console.log(2**10);// 输出1024

image.png


目录
相关文章
|
4月前
|
JavaScript 前端开发
ES6新特性(一)
ES6新特性(一)
|
6月前
|
前端开发 JavaScript 索引
ECMAScript 2024 新特性
ECMAScript 2024 新特性 ECMAScript 2024,第 15 版,添加了用于调整 ArrayBuffer 和 SharedArrayBuffer 大小和传输的功能; 添加了一个新的 RegExp /v 标志,用于创建具有更高级功能的 RegExp,用于处理字符串集; 并介绍了用于构造 Promise 的 Promise.withResolvers 便捷方法、用于聚合数据的 Object.groupBy 和 Map.groupBy 方法等
107 1
|
存储 JavaScript 前端开发
ECMAScript 2020(ES11)新特性简介
ECMAScript 2020(ES11)新特性简介
132 0
|
Java
es6中简单常用的新特性
es6中简单常用的新特性
57 0
|
存储 JSON JavaScript
ECMAScript 6 新特性详解(中)
ECMAScript 6 新特性详解(中)
|
自然语言处理 JavaScript 前端开发
ECMAScript 6 新特性详解(上)
ECMAScript 6 新特性详解(上)
|
存储 前端开发 JavaScript
ECMAScript 6 新特性详解(下)
ECMAScript 6 新特性详解(下)
|
JavaScript 算法 API
ECMAScript 2016(ES7)新特性简介
ECMAScript 2016(ES7)新特性简介
ECMAScript 2016(ES7)新特性简介
|
Web App开发 前端开发 JavaScript
ECMAScript 2020(ES11) 的新特性总结
ECMAScript 2020(ES11) 的新特性总结
217 0
ECMAScript 2020(ES11) 的新特性总结
|
自然语言处理 前端开发 JavaScript
ECMAScript 2021 (ES12)的新特性总结
ECMAScript 2021 (ES12)的新特性总结
173 0
ECMAScript 2021 (ES12)的新特性总结