深入理解ES6之《ES7》
指数运算符
Math.pow是可以进行求幂运算的
求幂运算符是两个星号
let result = 5 ** 2
console.log(result) //25
console.log(result === Math.pow(5, 2)) //trueA
求幂运算符的优先级高于其它二元运算符,但是一元运算符的优先级高于求幂运算符
let result = 2 * 5 ** 2
console.log(result)//50
求幂运算符左侧的一元运算符只能是++或者是--
let result =-5** 2//语法错误
let result = -(5 ** 2)//可以这样包裹
let result = (-5) ** 2//也可以这样包裹
Array.prototype.includes
在ES6中可通过String.prototype.includes方法来检查给定字符串中是否存在某些子字符串
Array.prototype.includes接受俩参数
- 要搜索的值
- 开始搜索的索引位置(可选)
let values = [1, 2, 3]
console.log(values.includes(1))//true
console.log(values.includes(0))//false
console.log(values.includes(1, 2))//false
用includes进行值比较时,===操作符的使用只有一个例外:即使NaN===NaN的计算结果是false,NaN也被认为是等于NaN,这与indexOf方法的行为不同,后者严格使用===进行比较
let values = [1, NaN, 2]
console.log(values.indexOf(NaN))//-1
console.log(values.includes(NaN))//true
另外一个奇怪的地方是+0和-0不管是在indexOf还是在includes中的表现行为都相同
let values = [1, +0, 2]
console.log(values.indexOf(-0))//-1
console.log(values.includes(-0))//false--后面发现测试的居然是true
函数作用域严格模式下改动
在ES6中仍然可以使用“use strict”指令来指定严格模式
ES7中指出只有参数不包含解构或默认值的简单参数列表时才可以在函数中使用“use strict”
function okay(first, second) {
"use strict"
return first
}
//这里抛出语法错误
function notOkay1(first, second = first) {
"use strict"
return first
}本文转载于:猿2048→https://www.mk2048.com/blog/blog.php?id=h121122ibcb
深入理解ES6之《ES7》的更多相关文章
- 《深入理解ES6》笔记——扩展对象的功能性(4)
变量功能被加强了.函数功能被加强了,那么作为JavaScript中最普遍的对象,不加强对得起观众吗? 对象类别 在ES6中,对象分为下面几种叫法.(不需要知道概念) 1.普通对象 2.特异对象 3.标 ...
- 深入理解 ES6中的 Reflect
阅读目录 一:Reflect.get(target, name, receiver) 二:Reflect.set(target,name,value,receiver) 三:Reflect.apply ...
- ES6的promise对象研究
ES6的promise对象研究 什么叫promise? Promise对象可以理解为一次执行的异步操作,使用promise对象之后可以使用一种链式调用的方式来组织代码:让代码更加的直观. 那我们为什么 ...
- ES6正则表达式扩展
前面的话 正则表达式是javascript操作字符串的一个重要组成部分,但在以往的版本中并未有太多改变.然而,在ES6中,随着字符串操作的变更, ES6也对正则表达式进行了一些更新.本文将详细介绍ES ...
- ES6函数扩展
前面的话 函数是所有编程语言的重要组成部分,在ES6出现前,JS的函数语法一直没有太大的变化,从而遗留了很多问题和的做法,导致实现一些基本的功能经常要编写很多代码.ES6大力度地更新了函数特性,在ES ...
- ES6数组扩展
前面的话 数组是一种基础的JS对象,随着时间推进,JS中的其他部分一直在演进,而直到ES5标准才为数组对象引入一些新方法来简化使用.ES6标准继续改进数组,添加了很多新功能.本文将详细介绍ES6数组扩 ...
- ES6数字扩展
前面的话 本文将详细介绍ES6数字扩展 指数运算符 ES2016引入的唯一一个JS语法变化是求幂运算符,它是一种将指数应用于基数的数学运算.JS已有的Math.pow()方法可以执行求幂运算,但它也是 ...
- ES6,扩展运算符的用途
ES6的扩展运算符可以说是非常使用的,在给多参数函数传参,替代Apply,合并数组,和解构配合进行赋值方面提供了很好的便利性. 扩展运算符就是三个点“...”,就是将实现了Iterator 接口的对象 ...
- 理解 ES6 Generator-next()方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 前端知识体系:JavaScript基础-原型和原型链-理解 es6 中class构造以及继承的底层实现原理
理解 es6 中class构造以及继承的底层实现原理 原文链接:https://blog.csdn.net/qq_34149805/article/details/86105123 1.ES6 cla ...
随机推荐
- 解决 “Project ERROR: Unknown module(s) in QT: webengine”以及“Your MaintenanceTool appears to be older than 3.0.2. .” 的办法
1.环境 Windows10,Qt5.8.0 2.问题描述 需要使用到WebEngineView组件,在工程.pro中增加webengine后,Qt Creator应用程序输出中打印了 Project ...
- LeetCode-009-回文数
回文数 题目描述:给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false . 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数.例如,121 是回文,而 1 ...
- 写下载的时候,axios的responseType: "blob"(一定要修改)
download(data, fileName) { // window.URL.createObjectURL创建一个地址. const url = window.URL.c ...
- mysql破解root口令
破解root口令 [root@centos8 ~]#vim /etc/my.cnf [mysqld] skip-grant-tables #取消密码验证 skip-networking # mysql ...
- jq 全选 全不选
- 什么是phpize及其用法
应用场景在使用php的过程中,我们常常需要去添加一些PHP扩展库.但是重新对php进行编译是比较蛮烦的,所以这时候我们可以使用phpize对php进行添加扩展.并且phpize编译的扩展库可以随时启用 ...
- Laravel-QueryList-采集
<?php namespace App\Http\Controllers; use App\Models\NewsModel; use Illuminate\Http\Request; use ...
- 微信网页JSDK接口-wx.chooseImage问题
wx.chooseImage({count: 1, // 默认9sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有sourceTy ...
- K8S原来如此简单(三)Pod+Deployment
上篇我们已经安装好k8s1.23集群,现在我们开始使用k8s部署我们的项目 Pod Pod 是一组容器集合,是可以在 Kubernetes 中创建和管理的.最小的可部署的计算单元.这些容器共享存储.网 ...
- 域环境SID相同如何解决
查看SID 进入命令行(WIN+R) 输入 whoami /user 什么是SID? sid相当于系统的身份证号,在域内有相同sid的计算机就相当于两个人共同有一个身份证号码,后果可想而知 建 ...