ES6复习(2)
Es6学习笔记(2)
1.(…)拓展运算符
- es6新增的扩展运算符
...
- 作用:
- 所有能够被迭代的东西,都可以被展开运算符…,进行展开,即可将数组展开变成参数序列,将字符串展开变成单一的字符
代码展示:
// 『...』 扩展运算符能将『数组』转换为逗号分隔的『参数序列』 |
结果展示:
拓展运算符的应用:
代码展示:
//1. 数组的合并:相当于把每一个目标数组变成对应的参数序列,然后再传进新数组里面 |
结果展示:
2.rest形参的默认值(代替arguments
)
arguments
参数的复习:- 在每一个函数内,都有一个内置的数组,是一个变量,叫做
arguments
。arguments
可以存储当前函数传入的所有参数,而且,是通过传参的顺序,进行排列的
- 在每一个函数内,都有一个内置的数组,是一个变量,叫做
rest
参数导读:ES6
中引入rest参数
(形式为’…变量名’),用于获取函数的多余参数。rest参数
之后不能再有其他参数(即只能是最后一个参数)。
代码展示:
// ES6 引入 rest 参数,用于获取函数的实参,用来代替 arguments |
结果展示:
3.promise
的使用翻阅前面的博客
4.symbol新数据类型
ES6
引入了一种新的原始数据类型Symbol
, 表示独一无二的值。它是JavaScript
语言的第七种数据类型,是一种类似于字符串的数据类型
。Symbol
特点- 1)
Symbol
的值是唯一的,用来解决命名冲突的问题 - 2)
Symbol
值不能与其他数据进行运算 - 3)
Symbol
定义的对象属性不能使用for…in
循环遍历, 但是可以使用Reflect.ownKeys
来获取对象的所有键名
- 1)
代码展示
//创建Symbol |
结果展示:
symbol
的使用场景:
symbol
由于它的唯一性,使用场景一般是给对象添加属性和方法
- symbol参考手册(学习symbol的内置值)
代码展示
// 使用场景一:作为属性名symbol |
结果展示:
4.iterator遍历器
- 所谓
迭代器
,即遍历器(Iterator)
就是一种机制。它是一种接口(这里的接口就是对象里的属性),为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署Iterator
接口,就可以完成遍历操作。 - 1)
ES6
创造了一种新的遍历命令
for...of
循环,Iterator
接口主要供for...of
消费 - 2)原生具备
iterator
接口的数据(可用for of
遍历)- a)Array
- b)Arguments
- c)Set
- d)Map
- e)String
- f)TypedArray
- g)NodeList
- 3)工作原理
- a)创建一个指针对象,指向当前数据结构的起始位置
- b)第一次调用对象的 next 方法,指针自动指向数据结构的第一个成员
- c)接下来不断调用 next 方法,指针一直往后移动,直到指向最后一个成员
- d)每调用 next 方法返回一个包含 value 和done 属性的对象注: 需要自定义遍历数据的时候,要想到迭代器。
代码展示:
const west = ['唐僧', '孙悟空', '沙僧', '猪八戒']; |
结果展示:
迭代器的应用:
- 迭代器的应用多用于自定遍历数据,按照我们的意愿来遍历数据
- a) 创建一个指针对象,指向当前数据结构的起始位置
- b)第一次调用对象的 next 方法,指针自动指向数据结构的第一个成员
- c)接下来不断调用 next 方法,指针一直往后移动,直到指向最后一个成员
- d)每调用 next 方法返回一个包含 value 和done 属性的对象注: 需要自定义遍历数据的时候,要想到迭代器。
代码展示:
// 声明一个对象 |
结果展示:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。转载请注明来自 肥林の仓库