const ret = () => new Promise(resolve => setTimeout( () => resolve('somestring'), 1000));
async function wrapper() {
let someString = await ret();
return someString;
}
console.log( wrapper() );
它记录 Promise { <pending> }
;
为什么它返回一个 Promise 而不是 'somestring'
?
我正在使用 Babel ES7 预设来编译它。
最佳答案
异步函数返回 promise 。为了做你想做的事,试试这样的事情
wrapper().then(someString => console.log(someString));
您还可以在 wrapper()
上等待,就像来自另一个异步函数上下文的其他 promise 一样。
console.log(await wrapper());
关于javascript - 返回一个等待的值会返回一个 Promise? (es7 异步/等待),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39812505/