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