WebブラウザはJavascriptを実行する

インターネットの「スイスアーミーナイフ」の感があるWebブラウザには、Webサーバーへのアクセスと取得したHTMLファイルの整形表示(Webページという)だけでなく、プログラミング言語Javascrptが実行可能である。 WebブラウザでJavascriptを実行するには以下のようにするだけで実行できるので、格別な言語処理系を準備する必要はない。 Webブラウザとテキストエディタさえあれば、インターネット接続も必要とせずに、プログラムを実行することができる。

Javascriptの実行は、コンパイラによって実行可能 executableな機械語(ネイティブコード native codeともいう)に翻訳した上でこれを読み取って動作させるのではなく、プログラムを記述したスクリプト(プログラムを記述したテキストでソースコード source codeを逐次解釈しながら実行するインタープリタ interpreterである。

Webブラウザ内でjavascriptが実行できるということは、WebブラウザがJavascriptが記述または読み込み指示されたHTMLファイルを読み込むと(WebサーバがらWebブラウザにJavascriptをWebブラウザに送り込まれると)、Webサーバが逐次的指示をブラウザに送り出すことなく(Webサーバと通信して一々指示を仰ぐことなく)、Webブラウザ内のページ内容を書き換えることができるようになる。 こうすることによって、Webサーバの負担を軽減しながら、ダイナミックなWebページを生成することができるようになる。

演習
Javascriptとして、半径を100ピクセルから300ピクセルまで20ピクセルずつ増加させながら円を描くことを繰り返すという内容であれば、次々に繰り返し描かれ続ける画像はWebブラウザが生成したものである。 Javascriptでこうした画像を描くにはどうすればよいだろう?

また、JavascriptはAjax(Asynchronous JavaScript + XML)と呼ばれるブラウザ内で非同期通信とインターフェイスの構築などを行う技術(Ajaxエンジン)で使われることによって、WebブラウザとWebサーバとの組み合わせで実現されるWebアプリケーションにおいて、WebブラウザからWebサーバにサーバ要求を送りその結果応答を受け取る(時間を要する)ことでページ画面遷移を発生させる従来方法から解放され、Ajaxによって動的なWebアプリケーションが可能になった。

演習
Google検索を利用するときに、検索ワードを入力する間にもWebブラウザとGoogle検索エンジンとの間でバックグランドで通信が行われ、入力途中でも検索語の候補リストが表示されることを確認しなさい。