乐趣区

关于javascript:ES9二-Promisefinally

目录

  • Promise 是如何“兜底”操作的?
  • 想理解全副的 Promise?
  • ES6-ES10 学习幅员

Promise 是如何“兜底”操作的?

应用 Promise.finally,无论执行then 还是 catch,都会执行finally 外面的函数体。

例如一个弹窗:能够用 resolvereject别离保留变量的值,
然而最初用 finally 去管制弹窗的弹出。

上面看代码的例子:

const Gen = (time) => {return new Promise((resolve, reject) => {setTimeout(() => {if(time < 500) {reject(time)
      } else {resolve(time)
      }
    }, time);
  })
}

Gen(Math.random() * 1000)
  .then(val => console.log(val))
  .catch(err => console.log(err))
  .finally(() => {console.log('finish') })

想理解全副的 Promise?

  • ES6(十一)—— Promise(更优的异步编程解决方案)
  • 手写一个 Promise 源码

ES6-ES10 学习幅员

退出移动版