回答編集履歴

2

.

2024/04/17 22:46

投稿

int32_t
int32_t

スコア20999

test CHANGED
@@ -1,4 +1,4 @@
1
- Promiseの使い方としては、`resolve()` を呼んでないという間違いがあります。しかし、そこを直しても期待通りには動かないと思います。
1
+ Promiseの使い方としては、`resolve()` を呼んでないという間違いがあります。しかし、そこを直しても期待通りには動かないと思います。`load` イベントリスナで行っている処理がありますが、`load` イベントリスナの登録を遅延させると `load` イベントに間に合わないためです。
2
2
 
3
3
  各.jsファイルを無修正で希望の動作にすることはできません。ファイルを分割したままにすることはできますが、それぞれに修正が必要です。
4
4
 

1

.

2024/04/17 14:25

投稿

int32_t
int32_t

スコア20999

test CHANGED
@@ -4,17 +4,17 @@
4
4
 
5
5
  例えば以下のような修正になるでしょう:
6
6
  #### load.js
7
+ * 以下の関数を追加。
7
8
  ```js
8
9
  function promiseOne() {
9
10
  return new Promise(resolve => setTimeout(resolve, 1300));
10
11
  }
11
12
  ```
12
- を追加
13
13
 
14
14
  #### moji_move1.js
15
- `load` イベントリスナ内の `TextRandomAnimeControl();` を削除。
15
+ * `load` イベントリスナ内の `TextRandomAnimeControl();` を削除。
16
- 以下の関数を追加。
16
+ * 以下の関数を追加。
17
- ```Js
17
+ ```js
18
18
  function promiseTwo() {
19
19
  return new Promise(resolve => {
20
20
  TextRandomAnimeControl();
@@ -24,7 +24,7 @@
24
24
  ```
25
25
 
26
26
  #### id=test
27
- 以下に変更。
27
+ * 以下に変更。
28
28
  ```js
29
29
  function promiseThree() {
30
30
  return new Promise(resolve => {
@@ -36,8 +36,8 @@
36
36
  ```
37
37
 
38
38
  #### moji_move2.js
39
- `load` イベントリスナ登録をまるごと削除。
39
+ * `load` イベントリスナ登録のコードをまるごと削除。
40
- 以下の関数を追加。
40
+ * 以下の関数を追加。
41
41
  ```js
42
42
  function promiseFour() {
43
43
  return new Promise(resolve => {
@@ -48,7 +48,7 @@
48
48
  ```
49
49
 
50
50
  #### 実行
51
- すべての .js コードを読んだあとで、
51
+ すべての .js コードを読んだあとで、以下のコードを実行。
52
52
  ```js
53
53
  (async function() {
54
54
  await promiseOne();