为什么我不能从异步函数返回的对象中单行对象属性?

Why can't I single-line object properties from objects returned from async functions?

我想使用从异步函数返回的对象。

async function myPromise() {
  console.log("Single-line", await getUsers().quote);
  let users = await getUsers();
  console.log("Multi-line", users.quote);
}

async function getUsers() {
  return await new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve({
        name: "Jeff",
        id: 1,
        quote: "Hello world!"
      });
    }, 1000)
  });
}

myPromise();

为什么我必须先将异步函数的结果赋值给一个变量,然后才能使用返回对象中存储的属性?

属性访问器优先于await运算符,所以需要加括号:

(await getUsers()).quote