ES6-ES11语法

12/20/2021 ES6

# let 关键字

1、变量不能重复声明(Var可以重复声明,后声明的覆盖)

2、块级作用域 (只在代码块里起作用)

3、不存在变量提升(与var的主要区别,先声明再使用)

4、不影响作用域链

# const 关键字

1、一定要赋初始值

2、一般常量使用大写

3、常量的值不能修改

4、块级作用域

5、对于数组和对象的元素修改,不算作对常量的修改,不会报错

# 解构赋值

解构数组、解构对象

# 模板字符串

1、内容中可以直接出现换行符

2、方便变量拼接

# 简化对象写法

对象属性名和属性值一样时可以不写属性值

# 箭头函数

1、this 是静态的,始终指向函数声明时所在的作用域下的 this 的值

2、不能作为构造函数实例化对象

3、不能使用 arguments 变量

4、箭头函数的简写(形参只有一个,执行语句只有一条)

5、箭头函数适用于与 this 无关的回调,比如定时器,数组的方法的回调

# 函数形参赋初始值(默认值)

可以配合结构赋值使用

# rest 剩余参数(...args)

1、在 ES5 获取实参的方式是通过 arguments 变量(对象形式)

2、rest 参数必须放到参数的最后

3、得到的实参是数组形式,区别于 arguments(伪数组)

# 拓展运算符

1、可用于数组的合并

2、数组的克隆(浅拷贝)

3、将伪数组转换为真正的数组

# Symbol 类型

给对象添加独一无二的属性和方法

# 迭代器 (Iterator)

1、 for of 能够遍历数组的原理,创建一个 symbol 对象,调用 next 方法返回值

2、迭代器的应用:自定义遍历数组

# 生成器

1、本质是一个特殊的函数

2、function * fn(){}

3、yield 修饰

4、通过.next 方法返回
Last Updated: 5/7/2022, 1:52:56 PM