从JavaScript中的异步函数返回值

returning values from async functions in JavaScript?

本文关键字:函数 返回值 异步 JavaScript      更新时间:2023-09-26

我有以下片段

"use strict"
const req = require('requisition');
async function doRequest () {
  const url = 'http://api.com/v3/search?q=breno'
  const res = await req.get(url)
  console.log(res.status)
  const body = await res.json();
  return "it Works!"
}

console.log(doRequest())

请求运行良好,但console.log()生成:

{}
200

而不是

200
"it Works!"

当我尝试:

console.log(await doRequest())

我得到一个Unexpected Token错误

async函数返回承诺。在最高级别,您必须"订阅"承诺:

doRequest().then(result => console.log(result));