首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
ES6 语法
hghh
创建于2021-08-23
订阅专栏
ES6 语法,文章内容来自阮一峰的《ES6 标准入门》第三版 笔记
暂无订阅
共13篇文章
创建于2021-08-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
let 和 const 命令
块级作用域内 let 声明的变量,作用域绑定为当前作用域,不会受外部影响,即在代码块内,使用 let 声明变量前,该变量都不可用,若使用该变量会报 ReferenceError 错误。 const 一旦声明变量,就必须立即初始化,不能留到以后赋值。其声明的变量只在所在的块级作用…
函数的扩展
指定默认值以后,函数的 length 属性将返回没有指定默认值的参数个数。若设置默认值的参数不是尾参数,那么后面的参数也不计入 length 属性。同理, rest 参数不会计入 length 属性。 ES5开始,函数内部可以设定为严格模式。ES6规定只要函数参数使用了默认值、…
Reflect
Reflect 的设计目的: 1、修改某些Object方法的返回结果,使其变得更合理; 2、让Object操作都变成函数行为
Iterator 和 for...of 循环
默认 Iterator 接口 1、默认的 Iterator 接口为部署在数据结构 的 Symbol.iterator 属性,如数组的 Iterator 接口: 原生具备 Iterator 接口的数据结
Set 和 Map 数据结构
Set 是一种类似于数组,但成员的值都是唯一的,没有重复的数据结构。数组去重:[... new Set(array)] 向 Set 加入值时不会发生类型转换,所以 5 和 "5" 是两个不同的值。Set 内部判断两个值是否相同时,使用的是类似于全等运算符( === ),不同的是…
变量的解构赋值
数组的元素是按顺序排列的,变量的取值是由位置决定的。如果解构不成功,变量的值就等于 undefined。 不完全解构,是指等号左边的模式只匹配到一部分的等号右边的数组,但是解构可以成功。如下: 解构时允许指定默认值,当赋值数组对应的值严格等于(===) undefined 时,…
字符串的扩展
ES6 中只要将码点放入大括号,就能正确解读该字符。大括号表示法与四字节的 UTF-16 编码是等价的。 codePointAt() 能够正确处理4个字节存储的字符,返回一个字符的码点,参数是字符在字符串中的位置(从0开始)。该方法定义在字符串实例对象上。 从码点返回对应的字符…
正则的扩展
RegExp构造函数ES6中允许RegExp构造函数的第一个参数为正则对象时,第二个参数传入修饰符,并且传入的修饰符会替换正则对象的修饰符
数值的扩展
Number.isFinite() 用来检查一个数值是否为有限的(finite),其中,非数字和 NAN 都是 false。 Number.isNaN() 用来检查一个值是否为 NaN。 isFinite() 和 isNaN() 先调用 Number() 将非数值转换为数值,再…
数组的扩展
扩展运算符: ... ,如同 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。 扩展运算符后还可以放置表达式。 若扩展运算符后是一个空数组,则不产生任何效果。 如果将扩展运算符用于数组赋值,则只能将其放在参数的最后一位,否则会报错。 该方法用于将类似数组的对象(如 …
对象的扩展
用来将源对象的所有可枚举属性(不复制继承属性)复制到目标对象中,采用的是浅复制。如果源对象某个属性的值是对象,目标对象复制得到的是这个对象的引用。 多个参数:源对象参数不是对象,转为对象(无法转为对象则跳过,不报错)。数值、字符串、布尔值只有字符串会以数组的形式复制到目标对象,…
Symbol
ES6 引入新的原始数据类型 Symbol ,表示独一无二的值(所有 Symbol 类型的值都不相等)。Symbol 不是对象,所以不能使用 new 命令,也不能添加属性。 如果 Symbol 的参数是一个对象,先调用该对象的 toString 方法,将其转为字符串,然后才生成…
Proxy
概述Proxy 可以理解成在目标对象前架设一个“拦截”层,外界对该对象的访问都必须先通过这层拦截层,即提供了一种机制可以对外界的访问进行过滤和改写。ES6 提供 Proxy 构造函数,用于生成 Pro