我正在尝试异步/等待功能。我有这样的代码来模拟请求:
const getJSON = async () => {
const request = () => new Promise((resolve, reject) => (
setTimeout(() => resolve({ foo: 'bar'}), 2000)
));
const json = await request();
return json;
}
当我以这种方式使用代码时。console.log(getJSON()); // returns Promise
它返回一个 Promise
但当我调用这行代码时
getJSON().then(json => console.log(json)); // prints { foo: 'bar' }
它按预期输出json
是否有可能只使用像console.log(getJSON())
这样的代码?我不理解的是什么?
console.log(await getJSON());
- hoomi