仮想と現実の真ん中あたり

主に舞台探訪とか聖地巡礼と呼ばれる記録をつづるブログ

JavaScriptの配列宣言

■メモリの動的確保と静的確保
今まで、JavaScriptの配列を、




  var markers = new Array(32);  /* 記述A */


のように宣言して使っていました。これは古い参考書を見たらこう書いてあったからですが、最近の参考書だと、



  var markers = ;  /* 記述B */


のように書いてあるようです。
後は普通に、



  markers[0] = ...
  markers[1] = ...


と値を代入して行くわけですね。
ですが、Cから学び始めた古い人間にしてみると、記述Bの宣言の後でこのように代入するのを見ると、「どのメモリに代入してるんだ!? 痛いのはイヤー!」と、過去のトラウマが蘇って非常に精神衛生に悪かったりしまして(笑)、あえて古い書き方で宣言してました。
C言語が配列の宣言時にサイズを指定する必要があるのは、コンパイル時点でメモリ領域が確定される、静的確保の処理系を(一般的に)採ることに由来しています。
しかしながら、JavaScriptの配列は動的確保されるわけでして、よく考えてみれば、記述Aにしたところで、型宣言が無いわけですから、この時点でメモリ領域が確定しているわけではありません。
それどころか、JavaScrptの配列は強力で、



  var ship = ;
  ship["長門"] = 224.94;
  ship["大和"] = 263.0;


のように、連想配列(ハッシュ)の機能まであったりします。
そんなこんなで、こういう言語仕様に対して、わざわざ古い宣言スタイルで記述するのも無意味な事だと思い直したわけです。


そんなわけで、現在、「Kanon」探訪記のJavaScrptは、新しい宣言スタイルに変更して作成中です。
サンプル↓
http://www7a.biglobe.ne.jp/~uso9000/travel/kanon-tv2/kanon2_test.htm


■近況
色々とあって、結局、本日は木崎湖へ遠征出来ず。
金融機関が開いている休暇日は、社会人には貴重だったりするわけで、ヤボ用を片づけているうちに日が暮れてしまいました。残念。


さて、明日はいよいよ、「Kanon」横浜探訪です! 楽しみだなぁ〜。
…前の立川探訪記がまだ完成してないけど。orz