ES7扩展

Posted 飞鹰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES7扩展相关的知识,希望对你有一定的参考价值。

前一段时间小编一直在更新javascript es6版本的部分新语法和新特性,鉴于现在js一直在更新,接下来小编将和大家一起进步,一块探究js的新特性。今天小编就和大家一起来看看es7更新的语法和新特性。大家可以关注我的微信公众号,蜗牛全栈。
一、includes
1、基本用法

let arr = [\'es6\',\'es7\',\'es8\']
console.log(arr.includes(\'es7\')) // true 返回值是布尔,判断数组里面是否包含某个值

2、参数:第一个参数是要查找的元素,第二个元素是从第几个元素开始查找

let arr = [\'es6\',\'es7\',\'es8\']
console.log(arr.includes(\'es7\',1)) // true 从数组index=1的位置开始查找
console.log(arr.includes(\'es7\',2)) // false
console.log(arr.includes(\'es7\',-1)) // false 从最后一个(es8)开始往后找
console.log(arr.includes(\'es7\',-2)) // true 从最后二个(es8)开始往后找

3、引用数据类型的判断:两种办法只能判断基本数据类型

arr = [\'es6\',[\'es7\',\'es8\'],\'es9\']
console.log(arr.includes([\'es7\',\'es8\'])) // false
console.log(arr.indexOf([\'es7\',\'es8\'])) // -1

4、关于NaN判断

arr = [\'es6\',NaN,\'es9\']
console.log(arr.includes(NaN)) // true
console.log(arr.indexOf(NaN)) // -1 indexOf不能检测NaN

5、判断的严格性:两种方式判断相当三个等号严格判断

arr = [\'es6\',NaN,\'es9\']
console.log(arr.includes(NaN)) // true
console.log(arr.indexOf(NaN)) // -1 indexOf不能检测NaN

二、幂运算符(指数运算)
1、封装函数

// 运算2^10
function pow(x,y){
    let res = 1
    for(let i=0;i<y;i++){
        res*=x
    }
    return res
}

console.log(pow(2,10)) // 1024

2、使用Math

console.log(Math.pow(2,10)) // 1024

3、幂运算符

console.log(2**10) // es7新特性

关于使用includes和indexOf情况

  • 判断NaN是不是包含在数组中,只能用includes
  • 只关心是否存在,不关心出现的位置,用includes
  • 需要获取所在的下标,使用indexOf

以上是关于ES7扩展的主要内容,如果未能解决你的问题,请参考以下文章

ES7扩展

2018-6-3_《ES7的includeES6的Array.of(),Array.from()及扩展符》

VSCode Linter ES6 ES7 Babel linter

vscode中react代码白色

getSupportFragmentManager() 在活动扩展片段中未定义

如何让 VS Code 识别 ES7 绑定操作符