回答編集履歴

2

調整

2023/07/21 06:29

投稿

yambejp
yambejp

スコア115334

test CHANGED
@@ -40,6 +40,6 @@
40
40
  const print =(v,w)=>wait(w).then(x=>num.textContent=v);
41
41
  const wait = (sec) =>new Promise(resolve =>setTimeout(resolve,sec*1000));
42
42
  console.log("start");
43
- Promise.all([...Array(start_num - end_num+1)].map((_,i)=>i).map(x=>print(x,start_num-x))).then(()=>console.log("end"));
43
+ Promise.all([...Array(start_num - end_num+1)].map((_,i)=>i).map(x=>print(start_num-x,x))).then(()=>console.log("end"));
44
44
  </script>
45
45
  ```

1

調整

2023/07/21 06:26

投稿

yambejp
yambejp

スコア115334

test CHANGED
@@ -26,3 +26,20 @@
26
26
  <p class="num"></p>
27
27
  </div>
28
28
  ```
29
+ # 参考
30
+ async/awaitがいやなら予めスケジューリングしてpromise.allしてもよいかも
31
+ ```javascript
32
+ <div class="box">
33
+ <p class="num"></p>
34
+ </div>
35
+ <script>
36
+ const box = document.querySelector(".box");
37
+ const num = document.querySelector(".num");
38
+ const start_num=5;
39
+ const end_num=0;
40
+ const print =(v,w)=>wait(w).then(x=>num.textContent=v);
41
+ const wait = (sec) =>new Promise(resolve =>setTimeout(resolve,sec*1000));
42
+ console.log("start");
43
+ Promise.all([...Array(start_num - end_num+1)].map((_,i)=>i).map(x=>print(x,start_num-x))).then(()=>console.log("end"));
44
+ </script>
45
+ ```