【问题标题】:Javascript Promise explicit return after reject [duplicate]拒绝后的Javascript Promise显式返回[重复]
【发布时间】:2017-07-22 17:53:15
【问题描述】:

在现代 Javascript 中,我们有一个叫做 Promises 的东西。我们可以在 Promise 中使用 rejectresolve

我的问题是:在 Promise 中调用 rejectresolve 后是否需要显式返回?所以是这样的:

function foo() {
  ...
  return new Promise((resolve, reject) => {
    ...
    if (err) {
      reject(err);
      // return;
    }

    if (httpResponse.statusCode === 200) {
      resolve(httpResponse);
      // return;
    }
  });
}

【问题讨论】:

  • 是的,除非您将其余代码包装在 else 语句中,否则您需要 return 以避免检查 statusCode,即使您遇到错误。
  • 好的。我现在结束这个问题。
  • 哎呀.. 已经关闭 :)

标签: javascript promise


【解决方案1】:

我的问题是:我是否需要在调用拒绝后明确返回或 在 Promise 中解决?所以是这样的:

不,您不需要 return 语句。

来自Mozilla Developer Network's Promises article

语法

new Promise( /* executor */ function(resolve, reject) { ... } );

如您所见,没有提及任何返回语句。

【讨论】:

  • 虽然这在理论上可以回答问题,it would be preferable 在此处包含答案的基本部分,并提供链接以供参考。
  • 谢谢。我是这个网站的新手。将更新答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-10
  • 2021-02-04
  • 2019-03-10
  • 2015-10-17
  • 1970-01-01
  • 2021-09-23
相关资源
最近更新 更多