回答編集履歴

2

情報の追加。

2020/05/19 05:11

投稿

kei344
kei344

スコア69606

test CHANGED
@@ -31,3 +31,5 @@
31
31
  【let - JavaScript | MDN】
32
32
 
33
33
  [https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/let#Temporal_dead_zone](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/let#Temporal_dead_zone)
34
+
35
+ > 変数を宣言より前で参照すると ReferenceError が発生します。

1

情報の追加。

2020/05/19 05:11

投稿

kei344
kei344

スコア69606

test CHANGED
@@ -1,6 +1,6 @@
1
1
  既に回答があるとおり、定義していない変数を使用しているからです。
2
2
 
3
- ただ、そもそもなぜ同じスコープ内で`const timerId`しているかがわかりません。多重に`setTimeout`をしないためなら、ひとつ上のスコープで`const timerId`する必要があるのでは。(コードは特に読んでいないので何か必要があってのことなのでしょうか)
3
+ ただ、そもそもなぜ同じスコープ内で`const timerId`しているかがわかりません。多重に`setTimeout`をしないためなら、ひとつ上のスコープで`const timerId`する必要があるのでは。(コードは特に読んでいないのですが、何か必要があってのことなのでしょうか)
4
4
 
5
5
  ```js
6
6
 
@@ -21,3 +21,13 @@
21
21
  */
22
22
 
23
23
  ```**動くサンプル:**[https://jsfiddle.net/dxg3aof9/](https://jsfiddle.net/dxg3aof9/)
24
+
25
+
26
+
27
+ ---
28
+
29
+
30
+
31
+ 【let - JavaScript | MDN】
32
+
33
+ [https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/let#Temporal_dead_zone](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/let#Temporal_dead_zone)