宏观任务和微观任务
宏观任务
宿主发起的任务为宏观任务
微观任务
JavaScript引擎发起的任务为微观任务
关系
在宏观任务中,JavaScript的promise会产生异步代码,JavaScrip必须保证这些异步代码在一个宏观任务中完成。因此,每个宏观任务中又包含了一个微观任务的队列。 promise永远在队列尾部添加微观任务,setTimeout等宿主API,则会添加宏观任务。
promise
promise是JavaScript语言提供的一种标准化的异步管理方式。 总体思想: 需要尽心io、等待或者其它异步操作的函数,不返回真实结果,而返回一个“承诺”,函数的调用可以在合适的时机,选择将这个承诺兑现(通过Promise的then方法的回调)
async/awaite