28.ES7中数组的includes方法和指数运算符的使用

数组的includes方法

  • 在ES7之前,如果我们想判断一个数组中是否包含某个元素,需要通过 indexOf 获取结果,并且判断是否为 -1。
  • 在ES7中,我们可以通过includes来判断一个数组中是否包含一个指定的元素,根据情况,如果包含则返回 true,否则返回false。
const arr = [1, "aaa", "bbb"];

if (arr.indexOf("aaa") !== -1) {
  console.log("数组arr中包含字符串aaa");
}
if (arr.includes("aaa")) {
  console.log("数组arr中包含字符串aaa");
}


// 数组arr中包含字符串aaa
// 数组arr中包含字符串aaa
  • indexOf的弊端:无法判断数组中是否包含NaN,
  • includes可以判断出数组中是否包含NaN
const arr1 = [1, "aaa", "bbb",NaN];
console.log(arr1.indexOf(NaN)) // -1 数组arr1中其实包含NaN,但是indexOf判断不出来
console.log(arr1.includes(NaN)) //true  includes可以判断出数组中是否包含NaN

指数运算符

  • 在ES7之前,计算数字的乘方需要通过 Math.pow 方法来完成。
  • 在ES7中,增加了 ** 运算符,可以对数字来计算乘方
//获取5的三次方
console.log(Math.pow(5, 3)); // 125

//ES7:
console.log(5 ** 3); // 125

非常感谢王红元老师的深入JavaScript高级语法让我学习到很多 JavaScript 的知识

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容