微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ES6基本语法

ES6

一、let、const

let:ES6中新增的用于声明变量的关键字

  • let声明的变量只在所处于的块级有效{}
  • 不存在变量提升
  • 暂时性死区

const:声明量,常量就是值(内存地址)不能变化的量

  • 具有块级作用域
  • 声明常量时必须赋值
  • 常量赋值后,值不能修改

二、解构赋值

ES6中允许从数组中提取值,按照对应位置,对变量赋值,对象也可以实现解构。

对象解构

三、箭头函数

ES6中新增的定义函数的方式

()=>{}

1

3

箭头函数不绑定this关键字,箭头函数中的this,指向的是函数定义位置的上下文this

四、剩余参数

剩余参数语法允许我们将一个不定数量的参数表示为一个数组

5

剩余参数和解构配合使用

五、扩展运算符

将数组或者对象转为用逗号分隔的参数序列

6

扩展运算符的应用

1)合并数组

7

2)将类数组或可遍历对象转换为真正的数组

8

六、模板字符串

ES6新增的创建字符串的方式,使用反引号定义

9

  • 模板字符串可以解析变量

    11

  • 模板字符串可以换行

    12

  • 在模板字符串中可以调用函数

    13

七、Map和Set

ES6提供了新的数据结构Set,它类似于数组,但是成员的值都是唯一的,没有重复的值。

创建set

15

初始化

16

四个操作方法

add(value):添加某个值,返回 Set 结构本身。

delete(value):删除某个值,返回一个布尔值,表示删除是否成功。

has(value):返回一个布尔值,表示该值是否为Set的成员。

clear():清除所有成员,没有返回值。

Map 是 ES6 中新增的数据结构,Map 类似于对象,但普通对象的 key 必须是字符串或者数字,而 Map 的 key 可以是任何数据类型.

Map 实例的属性方法如下:

size:获取成员的数量
set:设置成员 key 和 value
get:获取成员属性
has:判断成员是否存在
delete:删除成员
clear:清空所有

八、symbol

ES6引入的一种新的原始类型Symbol,表示独一无二的值

Symbol的特点:
  • Symbol属性对应的值是唯一的,解决命名冲突问题
  • Symbol值不能与其他数据进行计算,包括同字符串拼串
  • for in, for of遍历时不会遍历symbol属性

九、迭代器(iterator)

迭代器(iterator)是一种接口,为各种不同的数据结构提供统一的访问机制。

  • 通过Symbol.iterator来创建迭代器,通过迭代器的next()来获取迭代后的结果
  • 迭代器是用于遍历数据结构的指针

十、生成器(generator)

它与普通函数的区别:

  • function后面 函数名之前有个*
  • 只能在函数内部使用yield表达式,让函数挂起

概念:
1、ES6提供的解决异步编程的方案之一
2、Generator函数一个状态机,内部封装了不同状态的数据,
3、用来生成遍历器对象
4、可暂停函数(惰性求值), yield可暂停,next方法可启动。每次返回的是yield后的表达式结果

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐