仕事でWebアプリケーションの開発をしていて、JavaScriptを使っていたりするんだけど、ちゃんとJavaScriptの言語仕様や技術情報を勉強してなかったので、昨日買った「JavaScript」を読んでみた。
まだ半分も読んでいないのだけど、オブジェクトの扱い方とか、今まで知らなかった事が理解できた。あまり知られてないけど、JavaScriptはオブジェクト指向言語として利用することもできます。動きのあるWebページ作る程度なら、あまり使わないけどね。
この本で得た知識を利用して、Webブラウザで動くキッチン・タイマーもどきを作ってみた。秒数を入力してStartボタンを押すとカウントダウンが始まり、残り0秒になるとダイアログが表示されます。せっかちな方は、Pauseボタンを押して止めた後に少ない秒数を入力しなおすことができます。再度Startボタンを押すと、その秒数から再開します。
プログラムの構造としては、タイマーの動きを別ファイルtimer.jsでTimerクラスとして実装してます。クラスにするとオブジェクト指向の利点が利用できます。この場合の一番の利点は、Timerオブジェクトをたくさん作れる事。例えば、同時に5つのタイマーを持つ画面を作るのも難しくない。タイマーがたくさん同時に動いても、あんまり嬉しくないような気もするけどね。まあ、お遊びなので細かいことは気にしないように。
ちなみに、ローカルにコピーして利用する場合には、HTMLファイルだけでなく、JSファイルも必要なのでご注意を。一般的なブラウザだと「名前をつけて保存」で一緒にダウンロードしてくれるようです。