ES6+新特性:ES7(二)
文章目录
- ES7(2016)
- 1. Array.prototype.includes()
- 1.1 includes和indexOf的区别
- 2. 指数运算符(**)
- 3. 函数参数的尾逗号
ES(发行年份) | 链接 |
---|---|
ES6(2015) | ES6 |
ES7(2016)
1. Array.prototype.includes()
用于判断一个数组是否包含某个特定的值,返回布尔值。取代了indexOf方法。
官方文档:Array.prototype.includes()
const arr = [1,2,3,4,5]
console.log(arr.includes(3)) // true
console.log(arr.includes(6)) // false
1.1 includes和indexOf的区别
- 关于NaN的判断
- includes:可以判断出数组中是否存在NaN
- indexOf:无法进行判断
const arr = ["abc", "def", "ghi", NaN];
console.log(arr.includes(NaN)); // true
console.log(arr.indexOf(NaN)); // -1,即没有找到
2. 指数运算符(**)
** 用来进行幂运算,避免使用Math.pow方法。
const result = 2 ** 3; // 表示2的3次方
console.log("🚀 ~ result:", result) // 8
3. 函数参数的尾逗号
允许函数定义的最后一个参数使用逗号进行结尾,可以方便修改/添加参数时避免出错。
function sum(a, b, ) {return a + b;
}
console.log(sum(10, 20));