new Array(1)はまった JS
var hoge = new Array(1, 3, 4);
↑普段はこのように定義している。
配列にしたい3つの数字を引数にしている。
var hoge = new Array(1); console.log(hoge[0]);
→しかしこれはundefinedになる。
Arrayの引数はArrayコンストラクタでの大きさ「1」を定義してるのだから。
1つだけ数字を入れていると勘違いした。
実際は、「1つの空間を定義し、何も定義していない」から当たり前である。
この本でもすすめてる理由がわかった。
var hoge = [1]; console.log(hoge[0]);
→これは1が出力