天下没有不散的宴席
这个系列到这里应该就是最后一节了,前两章着重讲了promise,为什么着重讲promise呢?因为在用法上promise要比async await难一些,而且promise本身又不是一个语法糖。没有掌握的时候用起来就会有很多顾虑,async await却没有这种顾虑,用法简单、语义清晰。下面就要开始学习async await了:
不讲讲迭代器模式总觉得怪怪的
对于java语言来说,迭代器是一个很基本的模式,list与set结构都内置了迭代器。
但是javascript并没有这种结果(ps:ES6提供了set,而且也可以实现迭代器),但是我们对这种模式实用的并不是特别多。
迭代器模式是指提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。
so:迭代器就是在不暴露对象的内部表示的情况下,能够遍历整个元素
核心嘛就是:不暴露内部,可以遍历内部
下面我们就来实现一个简单的迭代器
这就符合迭代器模式的特点,并没有暴露内部的对象,通过next的方法可以遍历内部对象。说到现在很多人应该还没理解为什么要说迭代器。
Generator函数执行后会返回一个迭代器
async函数是Generator的语法糖。
这两个理由是不是一下子就说明写迭代器是很有用处的。
书写一个简单