promise 異步解決方案
特點
1、對象的狀態不受外界影響
pending(進行中)、fulfilled(已成功)和rejected(已失敗)
2、一旦狀態改變,就不會再變
pending => fulfilled
pending => rejected
缺點
1、無法取消Promise,一旦新建它就會立即執行
2、如果不設置回調函數,Promise內部拋出的錯誤,不會反應到外部
3、當處於pending狀態時,無法得知目前進展到哪一個階段
promise.prototype.then()
promise.prototype.catch()
promise.all() // 全部執行完之後 返回[]
promise.race() // 返回執行完成的第一個
promise().then().catch()
promise.resolve()
promise.reject()
Promise.try(f);