回答編集履歴

1

追記

2018/09/22 13:19

投稿

spookybird
spookybird

スコア1803

test CHANGED
@@ -27,3 +27,37 @@
27
27
  }
28
28
 
29
29
  ```
30
+
31
+
32
+
33
+ ### 解決済みですが追記
34
+
35
+
36
+
37
+ `var arr[i]`なんていう変数定義方法はありません。
38
+
39
+ 単純にそれだけの話です。
40
+
41
+
42
+
43
+ `var`と書いたら、そのあとに書けるのは`変数名`です。
44
+
45
+ `変数名`には規則があって、禁則文字というものもあります。
46
+
47
+ 詳細な規則は面倒くさいので割愛しますが、半角記号で使っていいのは`_`または`$`だと覚えておけばいいです。
48
+
49
+ `[`や`]`は`変数名`に使えない文字なので、構文エラーになります。
50
+
51
+
52
+
53
+ `arr[i]`というのは、`arr`という配列の`i番目`の要素にアクセスするという意味の`式`です。
54
+
55
+ `arr`という配列にアクセスするということは、`arr`という配列が必要です。
56
+
57
+ なので、まず`arr`という配列を作ってあげなければなりません。
58
+
59
+ 空の配列として作っているのはそういう理由です。
60
+
61
+
62
+
63
+ 例えば変数定義を`var arr;`とだけやって初期化しないでおくと、`arr[i]`とやろうとしたときに`Cannot set property '0' of undefined`等というエラーが出ます。