【LeetCode】2723. 两个 Promise 对象相加

两个 Promise 对象相加

题目

给定两个 promise 对象 promise1promise2,返回一个新的 promisepromise1promise2 都会被解析为一个数字。返回的 Promise 应该解析为这两个数字的和。

示例 1:

输入:
promise1 = new Promise(resolve => setTimeout(() => resolve(2), 20)),
promise2 = new Promise(resolve => setTimeout(() => resolve(5), 60))
输出:7
解释:两个输入的 Promise 分别解析为值 25。返回的 Promise 应该解析为 2 + 5 = 7。返回的 Promise 解析的时间不作为判断条件。

示例 2:

输入:
promise1 = new Promise(resolve => setTimeout(() => resolve(10), 50)),
promise2 = new Promise(resolve => setTimeout(() => resolve(-12), 30))
输出:-2
解释:两个输入的 Promise 分别解析为值 10-12。返回的 Promise 应该解析为 10 + -12 = -2

提示:

  • promise1promise2 都是被解析为一个数字的 promise 对象

题解

/**
 * @param {Promise} promise1
 * @param {Promise} promise2
 * @return {Promise}
 */

var addTwoPromises = async function(promise1, promise2) {
   
    // p1 和 p2 都是 Promise 对象,使用 async + await 等待结果
    // 步骤相当于 return await promise1 + await promise2;
    // 使用 Promise.all 并行执行多个 Promise
    const [p1, p2] = await Promise.all([promise1, promise2]);
    return p1 + p2;
};

/**
 * addTwoPromises(Promise.resolve(2), Promise.resolve(2))
 *   .then(console.log); // 4
 */

在这里插入图片描述

相关推荐

  1. LeetCode 2723. Promise 对象相加

    2023-12-08 15:48:05       48 阅读
  2. 比较对象相同对象不同值

    2023-12-08 15:48:05       28 阅读
  3. Leetcode617. 二叉树相加

    2023-12-08 15:48:05       23 阅读
  4. 如何优雅的比较对象是否相等

    2023-12-08 15:48:05       43 阅读
  5. Leetcode160 链表是否相交

    2023-12-08 15:48:05       45 阅读
  6. leetcode-2.相加

    2023-12-08 15:48:05       60 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-08 15:48:05       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-08 15:48:05       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-08 15:48:05       87 阅读
  4. Python语言-面向对象

    2023-12-08 15:48:05       96 阅读

热门阅读

  1. qt中sokect断开的几种情况

    2023-12-08 15:48:05       59 阅读
  2. 【PyTorch】前向传播、反向传播和计算图

    2023-12-08 15:48:05       50 阅读
  3. Echarts地图案例及常见问题

    2023-12-08 15:48:05       60 阅读
  4. Fabric 画布缩放、拖动、初始化大小

    2023-12-08 15:48:05       60 阅读
  5. adb push报错:remote couldn‘t create file: Is a directory

    2023-12-08 15:48:05       60 阅读
  6. Go 语言 iota 的神奇力量

    2023-12-08 15:48:05       56 阅读
  7. linux下ls和df卡死

    2023-12-08 15:48:05       63 阅读
  8. GO设计模式——13、享元模式(结构型)

    2023-12-08 15:48:05       58 阅读
  9. Linux卸载MySql(简洁版)

    2023-12-08 15:48:05       50 阅读
  10. Docker-compose 部署kong + konga

    2023-12-08 15:48:05       62 阅读
  11. 开发工具idea中推荐插件

    2023-12-08 15:48:05       56 阅读