异步/等待行为问题[重复]

Posted

技术标签:

【中文标题】异步/等待行为问题[重复]【英文标题】:Async /await behavioral issue [duplicate] 【发布时间】:2021-03-11 11:12:16 【问题描述】:

当我这样调用以下函数时:

  const data1 = async () => 
  const res = await server.fetch( query: LISTINGS );
  return res;
  ;
  console.log(data1());

这是控制台记录“Promise

  const data1 = async () => 
  const res = await server.fetch( query: LISTINGS );
  console.log(res);
  ;
  data1();

Promise

【问题讨论】:

【参考方案1】:

异步函数返回承诺。

实际上,在 async 中返回 await 确实没用,因为在记录返回值时仍然会得到 promise。 在第一个示例中,异步函数返回一个包含未包装值的 Promise。

在第二个示例中,您的函数仅被调用,并将解包后的值记录到控制台。

【讨论】:

以上是关于异步/等待行为问题[重复]的主要内容,如果未能解决你的问题,请参考以下文章

异步/等待异常和 Visual Studio 2013 调试输出行为

在 Parallel.foreach 中等待 [重复]

异步等待函数的奇怪行为

猫鼬 findById 的异步/等待行为

类中奇怪的异步/等待行为

在异步方法中省略异步和等待[重复]