ES7中新增内容

1.Array Includes

1)以往使用indexOf判断
在ES7之前,如果判断一个数组中是否包含某个元素,需要通过indexOf获取结果,并且判断是否为-1.


const names = ["abc", "cba", "nba", "mba"]

// 以往使用indexOf
if (names.indexOf("cba") !== -1) {
    
    
    // 不等于 -1 表示其中包含这个元素
    console.log("包含cba元素");
}

上述方法其实是通过索引值来判断是否包含该值,可读性比较差,因此在ES7中新增了一种方法includes。
2)新增的使用Includes判断

const names = ["abc", "cba", "nba", "mba"]

if (names.includes("cba")) {
    
    
    console.log("包含cba元素");
}

在这里插入图片描述
3)indexOf和Includes之间的区别:对NaN的判断
indexOf是没有判断正确判断是否含有NaN的。

const names = ["abc", "cba", "nba", "mba", NaN]

if (names.indexOf(NaN) !== -1) {
    
    
    console.log("包含NaN");    // 没有打印出来,也就是其中不包含,但其实数组中是有的
}

Includes是可以判断出来的。

const names = ["abc", "cba", "nba", "mba", NaN]

if (names.includes(NaN)) {
    
    
    console.log("包含NaN");     // 打印出来了
}

2.指数(乘方)运算符

1)在ES7之前,计算数字的乘方需要通过Math.pow方法来完成。

const results1 = Math.pow(3, 3)    // Math.pow(底数x,指数y)

2)新增运算符:**

const results2 = 2 ** 10    // 2的10次方  

猜你喜欢

转载自blog.csdn.net/qq_44482048/article/details/129192569
ES7