JS案例:实现Promise
说到ES6的Promise,大家并不陌生,它是JS中解决异步的方法之一 其优点:避免回调地狱,链式调用,函数思路清晰,逻辑相对回调函数和事件发布/订阅更强 缺点:理解性差,异步操作在promise构造函数内部 这段时间在整理面试题时发现,Promise的实现可以单独拿出来分享,于是自己简单实现了一下 码云地址: https://gitee.com/DieHunter/myCode/tree/master/Promise%E5%B0%81%E8%A3%85 实现完整功能之前,我们先了解一下Promise的用法,并实现一个简单的Promise和Promise.then函数 Promise(executor: (resolve: (value?: any) => void, reject: (reason?: any) => void) => void): Promise<any> 上述配置提示中显示,Promise需要传入一个回调函数,函数有两个参数(resolve, reject),第一个是异步执行成功后回调,另一个是失败时的回调。Promise.then方法是执行异步函数成功,即resolve执行时,才会执行then方法中的回调,以下是Promise最简单的一个用法 new Promise(function (resolve, reject) { setTimeout