C/C++ プログラマのための JavaScript 入門: プロローグ

no extension

私は C/C++ あるいはアセンブラといった低級言語を主に使う職業プログラマですが, もちろん仕事や趣味で他の言語を使うこともあります。 特に「スクリプト言語」と呼ばれる高級言語は手軽に使えるため重宝しますが, メインで使っているわけではないので, しばらく使わないと忘れてしまいます。 JavaScript も同様で使わないとすぐに忘れます。 そこでこれから何回かに分けて自分自身への覚え書きを兼ねて JavaScript について書いてみます。 といっても JavaScript の言語マニュアルを書いてもしょうがないので, C/C++ プログラマから見て JavaScript を取り扱う際に注意すべき点などを主に書いていきたいと思います。

あらかじめ予防線を張っておきますが, 私は言語系のプログラマではないですし特にスクリプト言語に関してはど素人同然です。 もし JavaScript に関する資料を探しているのなら, ここではなく, 以下の文献を参照されることをお薦めします。

JavaScript
David Flanagan著 / 村上 列監訳 / 安藤 進訳
オライリー・ジャパン (2000.12)
通常2-3日以内に発送します。

このシリーズではこれらの文献を参照しながら進めていきます。

なお, JavaScript を習うにあたっていちいち HTML ページを作るのは面倒だと感じる方もいるかもしれません。 実は私がそうです。 そこでこのシリーズでは原則として「Windows Script Host (WSH)」を使っていくことにします。 WSH は Windows 用のスクリプト・エンジンを駆動するホストプログラムです。 WSH で使用可能なスクリプト・エンジンならどんな言語でも使用可能です。 既定では JScript (JavaScript の Microsoft バージョン)と VBScript が使用可能ですが, 他にも Perl, REXX, Python などでも利用可能なスクリプト・エンジンがあるようです。

まず hello.js というファイルを作成して例のお約束のコードを書いてみましょう。

WScript.Echo("Hello World!");

WSH を起動するには CScript コマンドを起動します。

C:\> cscript hello.js
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

Hello World!

C:>

HTML 上の JavaScript コードであれば document.write メソッドを使うところですが, WSH には document オブジェクトはないため(無理やり実行しようとしても「実行時エラー」になります) WScript オブジェクトを使っています。 ちなみに CScript ではなく WScript コマンドを使う(または Explorer 上で hello.js をダブルクリックする)とウィンドウがポップアップします。 WSH は非常に強力なので(レジストリの書き換えもできます), お使いの環境によってはセキュリティ上の理由から無効になっている場合もあります。 あしからずご了承ください。

もうひとつツールを紹介しましょう。 JavaScript では冗長な記述が許されていますが, それ故に思わぬところにバグを混入させてしまうことがあります。 そこで構文チェックのために JSLint を利用することをお薦めします。

目次:

  1. プロローグ
  2. スクリプト言語
  3. データ型
  4. 型変換
  5. new 演算子とインスタンス
  6. prototype と継承
  7. 関数とスコープ
  8. 連想配列と配列