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扩展的主要内容,如果未能解决你的问题,请参考以下文章
2018-6-3_《ES7的includeES6的Array.of(),Array.from()及扩展符》
VSCode Linter ES6 ES7 Babel linter