回调函数
优点:解决了同步的问题(整体任务执行时长);
缺点:回调地狱,不能用 try catch
捕获错误,不能 return
;
Promise
优点:解决了回调地狱的问题;
缺点:无法取消 Promise
,错误需要通过回调函数来捕获;
Generator
特点:可以控制函数的执行。
Async/Await
优点:代码清晰,不用像 Promise
写一大堆 then
链,处理了回调地狱的问题;
缺点:await
将异步代码改造成同步代码,如果多个异步操作没有依赖性而使用 await
会导致性能上的降低;