ES7 - 新功能
本章介绍 ES7 中的新功能。
指数运算符
ES7 引入了一个新的数学运算符,称为指数运算符。此运算符类似于使用 Math.pow() 方法。指数运算符用双星号 ** 表示。该运算符只能用于数值。使用指数运算符的语法如下 −
语法
指数运算符的语法如下 −
base_value ** exponent_value
示例
以下示例使用 Math.pow() 方法和 指数运算符 计算数字的指数。
<script> let base = 2 let exponent = 3 console.log('using Math.pow()',Math.pow(base,exponent)) console.log('using exponentiation operator',base**exponent) </script>
上述代码片段的输出如下所示 −
using Math.pow() 8 using exponentiation operator 8
数组包含
ES7 中引入的 Array.includes() 方法有助于检查数组中是否有某个元素。在 ES7 之前,Array 类的 indexof() 方法可用于验证数组中是否存在某个值。如果找到数据,indexof() 将返回数组中第一次出现的元素的索引,否则如果数据不存在则返回 -1。
Array.includes() 方法接受一个参数,检查作为参数传递的值是否存在于数组中。如果找到该值,则此方法返回 true,否则如果该值不存在,则返回 false。使用 Array.includes() 方法的语法如下所示 −
语法
Array.includes(value)
或
Array.includes(value,start_index)
第二种语法检查指定索引中的值是否存在。
示例
以下示例声明一个数组标记并使用 Array.includes() 方法来验证数组中是否存在某个值。
<script> let marks = [50,60,70,80] //检查数组中是否包含 50 if(marks.includes(50)){ console.log('在数组中找到元素') }else{ console.log('找不到元素') } //检查是否从索引 1 找到 50 if(marks.includes(50,1)){ //从索引 1 搜索 console.log('在数组中找到元素') }else{ console.log('找不到元素') } //检查数组中是否为非数字 (NaN) console.log([NaN].includes(NaN)) //创建一个对象数组 let user1 = {name:'kannan'}, user2 = {name:'varun'}, user3={name:'prijin'} let users = [user1,user2] //检查数组中是否包含对象 console.log(users.includes(user1)) console.log(users.includes(user3)) </script>
上述代码的输出将如下所示 −
found element in array could not find element true true false