深入理解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 ...
随机推荐
- net core or Linux
某用户执行net core sdk 版本不生效 sudo chmod +x /home/username/netcore3.1sdk/dotnet //某个用户执行新版本net core sdk
- LeetCode-092-反转链表 II
反转链表 II 题目描述:给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right .请你反转从位置 left 到位置 right 的链表节点,返回 ...
- 编写第一个GET、POST接口[renren-fast框架系列(1)]
配置好 renren-fast 脚手架,学习完 Spring MVC 架构后,我需要具体调试 renren-fast 的接口,比如要新增某个接口. 什么是前后端分离 运行 renren-fast 项目 ...
- PHP-文件上传封装类
<?php $file = $_FILES['img']; $obj = new File(); $res = $obj->upload($file,'upload'); if($res) ...
- 安装wkhtmltopdf
思路 在网上查了下前后端都可以将html生成pdf,考虑到实现效果以及效率,最后决定将转化工作在服务端使用PHP完成.本着最好不要额外安装软件的原则,搜索过后分别尝试了 TCPDF MPDF FPDF ...
- 题解 P1659 【[国家集训队]拉拉队排练】
一眼可得PAM 如果没学过PAM的可以看这里:PAM学习小结 我们令PAM上多记录一个信息\(sum\),表示该节点表示串在原串上出现了多少次. 当我们处理完了\(sum\),对于长度\(len\)为 ...
- JSP 表单提交 数据库乱码解决方法
问题:有时候在做jsp逻辑处理时,比如提交表单,从前台注册的页面提交了一部分的数据,但是后面处理的JSP页面通过 request.getParameter 调用时,获取到的是一堆乱码. 乱码分析:因为 ...
- x86-7-页式管理(Paging)
x86-7-页式管理(Paging) 页式管理是重中之重! 在段式管理下操作系统的运作出现了很多问题,因为段的长度不定,在分配内存时,可能会发生内存中的空闲区域小于要加载的段,或者空闲区域远远大于要加 ...
- 聊聊视频中的编解码器,你所不知道的h264、h265、vp8、vp9和av1编解码库
你知道FFmpeg吗?了解过h264/h265/vp8/vp9编解码库吗? 我们日常生活中使用最广泛的五种视频编码:H264(AVC).H265(HEVC).vp8.vp9.av1都分别是什么?由哪些 ...
- Python基础之hello world!
仪式感很重要嘛: 精通各个语言的hello world! Python3 版本的 print('Hello world')