ECMAScript语言规范的第7个版本发布(ES2016)。由于 ES6
一下子更新太多了,ES7
就添加了两个小特性。
Array.prototype.includes
用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true
,否则返回 false
。
['a', 'b', 'c'].includes('a'); // true
['a', 'b', 'c'].includes('d'); // false
在这之前,我们通常会通过 Array.prototype.indexOf
来判断。
['a', 'b', 'c'].includes('a'); // true
['a', 'b', 'c'].indexOf('a') !== -1; // true
唯一的区别是 includes()
方法能找到 NaN
,而 indexOf()
不行。
[NaN].includes(NaN); // true
[NaN].indexOf(NaN); // -1
Exponentiation Operator 求冥运算
使用 a ** b
简化 Math.pow(a, b)
。
2 ** 3; // 2*2*2=8
Math.pow(2, 3); // 2*2*2=8