CodingYang

vuePress-theme-reco Rackar    2018 - 2024
CodingYang CodingYang

Choose mode

  • dark
  • auto
  • light
首页
类别
  • 技术
  • 个人
  • 思考
  • 儿童
标签
时间线
联系
  • 关于
  • RSS订阅 (opens new window)
  • GitHub (opens new window)
  • 简书 (opens new window)
  • CSDN (opens new window)
  • WeChat (opens new window)
GitHub (opens new window)
author-avatar

Rackar

67

文章

44

标签

首页
类别
  • 技术
  • 个人
  • 思考
  • 儿童
标签
时间线
联系
  • 关于
  • RSS订阅 (opens new window)
  • GitHub (opens new window)
  • 简书 (opens new window)
  • CSDN (opens new window)
  • WeChat (opens new window)
GitHub (opens new window)
  • Promise返回Promise

    • 返回另一个Promise

    Promise返回Promise

    vuePress-theme-reco Rackar    2018 - 2024

    Promise返回Promise


    Rackar 2020-07-04 JavaScript

    Promise用的很多,但在嵌套使用的时候还是会疑惑。记录一个小DEMO。

    # 返回另一个Promise

    Promise在新建时就会执行,then添加时如果异步已经完成则立即回调。

    resolve返回一个Promise,会导致前一个的状态无效,then接收的是下一个的返回值。

    const p1 = new Promise(function (resolve, reject) {
        console.log("p1")
        setTimeout(() => {
            console.log('2.1s')
            resolve('2100')
        }, 3100)
      })
      
      const p2 = new Promise(function (resolve, reject) {
          console.log('p2')
        setTimeout(() => {
            console.log('2s')
            resolve(p1)}, 2000)
      })
      
      p2
        .then(result => console.log("回调返回",result))
        .catch(error => console.log(error))
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    参与编辑此文章 (opens new window)
    更新于: 7/4/2020, 10:19:19 AM