Promise

239 阅读1分钟

ES6新增的类 为了管理JS中的异步编程 本身是同步

let p = new Promise()
p.then()

promise对象的三个状态

  • pending(初始化成功 开始执行)
  • fulfilled(成功 异步处理成功)
  • rejected(失败 异步处理失败)

管理异步

new Promise((resolve, reject) => {
  // Promise 的回调函数有两个形参,这两个形参代表着两个函数(将来浏览器调用 Promise 回调时传进来的)
  // resolve:当异步操作执行成功,我们执行 resolve 方法
  // reject:当异步操作执行失败,我们执行 reject 方法
  setTimeout(function () {
    resolve('Oh yeah!');
  }, 3000);
}).then((res) => {
  // => 第一个传递的函数是 resolve(现在可以这么说)
  console.log('成功 ', res)
}, (err) => {
  // => 第二个传递的函数是 reject
  console.log('完犊子 ', err);
});