非同期関数でPromiseを繰り返し実行するにはどうすればよいですか?
<p>Promise と async await を学習しています。ここでは、addPost 関数を呼び出してオブジェクトを 2 回プッシュし、オブジェクト配列をループして結果を確認したいのですが、このコードでは結果は次のようになりません。期待される。ここで、コードが showDetails() 関数に対して実行されると、4 つのオブジェクトがあるはずのときに 3 つのオブジェクトしか表示されません。ここで何が足りないのでしょうか? </p>
<p><br /></p>
<pre class="brush:js;toolbar:false;">const jobs = [{ title: '投稿 1' }, { title: '投稿 2' }];
変数カウント = 3;
const diffFunction = async () => {
const addPost = new Promise((解決、拒否) => {
setTimeout(() => {
photos.push({ title: `投稿 ${count}` });
カウント ;
解決(カウント);
}、1000)
})
const deletePost = new Promise((res, rej) => {
setTimeout(() => {
const deltedPost = post.pop();
res(deltedPost);
}、2000)
})
const showDetails = () => {
photos.forEach(element => {
console.log(要素.タイトル);
});
}
addPostを待ちます。
addPostを待ちます。
詳細を表示();
}
diffFunction();</pre>
<p><br /></p>