Qiitaで非同期処理について学習していたのですが、分からない部分がありました。
function sampleResolve(value) { return new Promise(resolve => { setTimeout(() => { resolve(value); }, 2000); }) } function sampleResolve2(value) { return new Promise(resolve => { setTimeout(() => { resolve(value * 2); }, 1000); }) } async function sample() { const [a, b] = await Promise.all([sampleResolve(5), sampleResolve(10)]); const c = await sampleResolve2(b); return [a, b, c]; } sample().then(([a, b, c]) => { console.log(a, b, c); // => 5 10 20 });
sample().thenでは引数に配列を渡しているにも関わらず、consoleに配列のインデックスではなく直接値を指定できております。
何故このようなことが可能なのでしょうか?
回答1件
あなたの回答
tips
プレビュー