回答編集履歴
4
語弊がある部分を修正
test
CHANGED
@@ -6,7 +6,9 @@
|
|
6
6
|
|
7
7
|
画像はあくまで、外側で宣言された変数を参照しており、
|
8
8
|
|
9
|
-
しかも、関数内では、その外側で宣言された変数に対して、代入を行っているので、
|
9
|
+
しかも、関数内では、その外側で宣言された変数に対して、代入を行っているので、同スコープとなり、
|
10
|
+
|
11
|
+
使うことができます。
|
10
12
|
|
11
13
|
|
12
14
|
|
3
文章おかしかったので修正
test
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
|
12
12
|
|
13
|
-
対して、質問者さんの構文だと、代入がfunctionキーワードな上、完全にローカルスコープなため、それでは、外側からは参照でき
|
13
|
+
対して、質問者さんの構文だと、代入がfunctionキーワードな上、完全にローカルスコープなため、それでは、外側からは参照できないのです。
|
14
14
|
|
15
15
|
|
16
16
|
|
2
なぜ、画像と違う結果になるかを追記
test
CHANGED
@@ -1,4 +1,16 @@
|
|
1
1
|
別スコープなので、共有されません。
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
そもそも、画像と構文の構造がまるで違います。
|
6
|
+
|
7
|
+
画像はあくまで、外側で宣言された変数を参照しており、
|
8
|
+
|
9
|
+
しかも、関数内では、その外側で宣言された変数に対して、代入を行っているので、共有ができています。
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
対して、質問者さんの構文だと、代入がfunctionキーワードな上、完全にローカルスコープなため、それでは、外側からは参照できません。
|
2
14
|
|
3
15
|
|
4
16
|
|
1
誤回答だったため、訂正
test
CHANGED
@@ -1,5 +1,13 @@
|
|
1
|
+
別スコープなので、共有されません。
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
下記は間違いだったので上記を持って回答とします。
|
6
|
+
|
7
|
+
|
8
|
+
|
1
|
-
`inner_func1`を実行していないからです。
|
9
|
+
~~`inner_func1`を実行していないからです。
|
2
10
|
|
3
11
|
実行しないと、
|
4
12
|
|
5
|
-
`hoge`が宣言されないような構文だからです。
|
13
|
+
`hoge`が宣言されないような構文だからです。~~
|