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

