var n = 8 という記述は var n 'という宣言と n = 8 'という実行文をあわせたシンタクスシュガーであることがわかる。 var n によりコンパイル時には n というシンボルを登録するが、その段階で n はスカラでも配列でもないし、もちろん 8 という値が代入されることもない。 exec 時に n = 8 という命令が実行されることにより、n = 8 という代入が行われる。