勉強のため、promiseをasyncに書き換えようとしたのですが、うまく行きません。
asyncはreturnをするときにresolveを返すと思っているのですが、コード2を実行すると2秒を待たずすぐにundefinedが返ってきてしいます。なぜでしょうか?
コード1
function sampleResolve(value) { return new Promise(resolve => { setTimeout(() => { resolve(value); }, 2000); }) } sampleResolve(5).then((value) => { console.log(value) }) // -> 5
コード2
async function sampleResolve(value) { setTimeout(() => { return(value); }, 2000); } sampleResolve(5).then((value) => { console.log(value) }) // -> undefined
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/03/06 03:30
2022/03/06 04:09
2022/03/06 04:32 編集
2022/03/06 04:29
2022/03/06 04:31 編集