用途 | ウェブスクリプティング |
---|---|
実行 | インタプリタ |
日本語 | 不得意 |
対応環境 | 汎用 |
入手 | ブラウザ内蔵 |
JavaScript については、よく知っている人も多いだろう。 Netscape Navigator が最初に採用したスクリプト系の言語で、 それまでは「動かない」ものだった HTML 文書に「命を吹き込む」ために Web 上の あちこちで使われている。
後を追って Microsoft Internet Explorer でも JScript が 採用された。これは、JavaScript とほぼ互換のスクリプト言語だが、 COM オブジェクトを利用する機能を追加。また、基本的な文法や動作にも違いがあり、 実際には両方でまともに動くスクリプトを書くのは大変だ。
両者の違いをなくすべく標準仕様 ECMA-262 (ECMAScript) や 文書オブジェクトモデル (DOM) が策定されたが、現実はまだ厳しい。
このほかにもご存知の方は、ご一報ください。
伝統にのっとって、「表示する」だけの簡単なスクリプトを紹介しよう。 まぁ、何事も基本は大事。
JavaScript にはウェブページに組み込む「クライアントサイド」での利用や、 CGI のように使う「サーバサイド」での利用があるが、ここで扱うのは クライアントサイドの方。Netscape Navigator か、 Microsoft Internet Explorer で実行できる。
JavaScript で「表示する」というと、いろんなやり方があるが、 まずはカンタンなものから。次のような HTML 文書を作って、ブラウザで開いてみよう。
<html> <head> <title>Hello</title> </head> <body> <script type="text/javascript"> <-- alert("Hello, JavaScript World!"); //--> </script> </body> </html>
HTML 文書を保存し直して、ブラウザで開くと、だいたいこんな感じの ウィンドウが出る (ブラウザによって多少違う)。じっくり鑑賞したら、 "OK" を押してウィンドウを消す。
「あれ? 出なかった。ブラウザは対応してるはずなのに」という場合は、 JavaScript を実行しないようにブラウザが設定されている。 メニューから設定画面を呼び出して、実行するように設定し直せば OK。 「再読込」すれば、ほら出たでしょ。
次は、HTML 文書の中にメッセージを「潜り込ませる」方式。 適当な HTML 文書の、body 要素 (<body> と </body> で 挟まれている部分) の中の適当な場所に、次のように書き込む。 場所によってはうまく動かないので、できれば、<p> の直前などがいい。
<script type="text/javascript"> <-- document.writeln("<p>Hello, JavaScript World!</p>"); //--> </script>
うまく表示されただろうか? 表示する内容をその場その場で変えることも できるから、このテを利用すると、CGI が使えなくても、それに近いことができる。 しかも、サーバにイチイチ接続しないから、CGI より高速だ。
最後は、ブラウザの機能に強く依存している例を紹介しよう。 この例では、Navigator の一番下にある「ステータスバー」に言葉を表示するので、 「Navigator なら動く」ことしか保証されていない。実際には Internet Explorer にも ステータスバーはついてるからあまり問題にならないが、どちらのブラウザでも ステータスバーを非表示にできる。というわけで、次の例を実行して楽しむには、 ステータスバーを表示しておく必要がある。準備ができたら、 適当な HTML 文書の適当なところに、次のように書き加える。
<script type="text/javascript"> <-- window.status="Hello, JavaScript World!"; //--> </script>
このテを使ってステータスバーに文字を出しているサイトはよくあるが、その多くが「スクロール」するものだ。以前の Navigator ではステータスバーが固定幅フォントだからいいが、最近では可変幅のフォントなものだから、ガクガクとしてみにくい。個人的には、そろそろやり方を変えたらと言いたくなる。
JavaScript で "ello, World!" をやるには、他にもCGI フォームのボタンや テキストフィールドに表示するというものもある。ただし、ボタンへの表示は 古いバージョンの Navigator ではエラーになる。
JavaScript でのプログラミングは、書くのは比較的カンタンで、 いろいろ面白いことができる。プログラミングをちょっとかじってみたい人にもおすすめだ。