美文网首页
ES6 Promise函数

ES6 Promise函数

作者: 光头小青蛙 | 来源:发表于2019-07-18 14:12 被阅读0次
  • Promise是异步编程的一种解决方案,它相当于一个容器,里面保存着未来才会结束的事件,它也主要是用来解决回调地狱的问题。
  • promise是一个对象,代表一个异步操作,有三种状态,进行中,成功,失败。只有异步操作的结果的可以决定当前是哪种状态,promise一旦新建执行,就没有办法中途停止。
  • promise允许函数作为参数传入,res为成功的回调,rej为失败的回调,当条件满足时,res/rej会将成功或失败的结果暴露出来。
  • 通过.then拿到暴露出来的结果,.then是一个全新的promise函数,.then允许两个函数作为参数,一个函数拿到成功的暴露结果,一个拿失败暴露的结果。
  • 通过catch获取一个指定发生错误时的回调函数。error为错误信息。
  • 一般来说,不要在then方法里面定义 rej状态的回调函数(即then的第二个参数),总是使用catch方法。
const pro=new Promise((res,rej)=>{
        if(!true){
          res('123')
        }
        else{
          rej("4576")
        }
      }).then((res)=>{
        console.log(res)
      },(rej)=>{
        console.log(rej)
      }).catch((error)=>{
    console.log(error)
}
)
  • Promise.all方法用于将多个Promise实例,包装成一个新的Promise实例。只有当作为参数所有的promise函数运行完毕,才会执行.then回调。
  • 如果作为参数的 Promise 实例,自己定义了catch方法,那么它一旦被出错,并不会触发Promise.all()的catch方法。
const promises = [2, 3, 5, 7, 11, 13].map(function (id) {
  return getJSON('/post/' + id + ".json");
});

Promise.all(promises).then(function (posts) {
  // ...
}).catch(function(reason){
  // ...
});
  • Promise.race()法用于将多个Promise实例,包装成一个新的Promise实例。只有当作为参数所有的promise函数有一个运行完毕,就会执行.then回调。
const promises = [2, 3, 5, 7, 11, 13].map(function (id) {
  return getJSON('/post/' + id + ".json");
});

Promise.race(promises).then(function (posts) {
  // ...
}).catch(function(reason){
  // ...
});

相关文章

  • Promise.done(),Promise.finally()

    es6 Promise.done(),Promise.finally()promise对象的finally函数为什...

  • Koa基础 Promise函数

    1. Promise 函数的特性 ES6 规定,Promise对象是一个构造函数,用来生成Promise实例。 P...

  • Promise对象

    ES6 规定,Promise对象是一个构造函数,用来生成Promise实例。resolve函数的作用是,将Prom...

  • Promise 用法解析

    Promise 在ES6中可以直接使用: Promise构造函数的参数是一个函数,这个参数函数的两个参resolv...

  • javaScript ES6 之 Promise 简单的事例

    在ES6标准中出现了 Promise(承诺) 类似于回调函数 1:创建Promise的实例 2:Promise结合...

  • [ES6] Promise

    Promise Promise是ES6提出解决异步编程的方案,相比于传统的回调函数,Promise更符合人们的编程...

  • ECMAScript 6 Promise

    ES6 规定,Promise对象是一个构造函数,用来生成Promise实例。 Promise对象有以下两个特点。 ...

  • 08JavaScript-ES6(3)

    Promise Promise 是 ES6 引入的异步编程的新解决方案。语法上 Promise 是一个构造函数,用...

  • ES6 Promise 用法讲解

    ES6 Promise 用法讲解 Promise是一个构造函数,自己身上有all、reject、resolve这几...

  • ES6 Promise 用法讲解

    ES6 Promise 用法讲解 Promise是一个构造函数,自己身上有all、reject、resolve这几...

网友评论

      本文标题:ES6 Promise函数

      本文链接:https://www.haomeiwen.com/subject/nxnklctx.html