promise, async和await
最开始实现异步的方法:回调函数 method1(function(err, result) { if (err) { throw err; } method2(function(err, result) { if (err) { throw err; } method3(function(err, result) { if (err) { throw err; } method4(function(err, result) { if (err) { throw err; } method5(result); }); }); }); }); 回调地狱一层一层嵌套多个回调函数,会使代码错综复杂,难以理解和调试。 promise promise是异步编程的一种解决方案,比传统的解决方案--回调函数和事件,更合理更强大。所谓promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,promise是一个对象,可以获取异步操作的消息,提供统一的API,各种异步操作都可以用同样的方法进行处理。 特点:1、对象状态不受外界影响。Promise 对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和 rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。 2