es7新增

ES7新增两个特性:

1、Array.prototype.includes()方法

2、求幂运算符(**)

一、Array.prototype.includes()方法:

该方法接收两个参数:要搜索的值和搜索的开始索引。

当第二个参数被传入时,该方法会从索引处开始往后搜索(默认索引值为0)。若搜索值在数组中存在则返回true,否则返回false。

['a', 'b', 'c', 'd'].includes('b') // true
['a', 'b', 'c', 'd'].includes('b', 1) // true
['a', 'b', 'c', 'd'].includes('b', 2) // false

ES6里数组的另一个方法indexOf与其区别:
1、简便性:

  indexOf返回的是某个元素在数组中的下标值,若想判断某个元素是否在数组里,我们还需要做额外的处理,即判断该返回值是否>-1。而includes则不用,它直接返回的便是Boolean型的结果。

2、精确性

两者使用的都是 === 操作符来做值的比较。

但是includes()方法有一点不同,两个NaN被认为是相等的,即使在NaN === NaN结果是false的情况下。

这一点和indexOf()的行为不同,indexOf()严格使用===判断。

二、求幂运算符(**)
** 是一个用于求幂的中缀算子,比较可知,中缀符号比函数符号更简洁,这也使得它更为可取。

基本用法

3 ** 2 // 9
效果同:

Math.pow(3, 2) // 9

posted @ 2020-09-23 10:59  木头小屋  阅读(175)  评论(0编辑  收藏  举报