令和6年度 ITパスポート試験 公開問題 問88 解説 JavaScriptの特性
JavaScriptに関する記述として, 適切なものはどれか。
- Webブラウザ上に, 動的な振る舞いなどを組み込むことができる。 ✓ 正答
- Webブラウザではなく, Webサーバ上だけで動作する。
- 実行するためには, あらかじめコンパイルする必要がある。
- 名前のとおり, Javaのスクリプト版である。
解説
JavaScriptの性質を見抜くポイント
この問題は、JavaScriptがWeb開発において「どこで」「どのように」動くかを理解しているかを問うています。正解を導くための判断根拠は、JavaScriptがWebブラウザ上で動作する「クライアントサイドスクリプト」であるという点です。
JavaScriptの基本的な仕組み
JavaScriptは、Webブラウザに読み込まれたHTMLやCSSを操作し、ユーザーの操作に応じて画面の内容を書き換えるために使われます。
例えば、ボタンを押したときにポップアップを表示したり、入力フォームの内容をリアルタイムでチェックしたり、あるいはページを遷移させずにコンテンツを切り替えたりといった動きは、すべてJavaScriptがブラウザ上で実行されることで実現しています。
なぜ他の選択肢は誤りなのか
イの「Webサーバ上でだけ動作する」という記述は、JavaScriptの主な役割と逆です。サーバー側で動く言語にはPHPやPython、Javaなどがありますが、JavaScriptは主にブラウザというユーザー側の環境で動きます(ただし、Node.jsという環境を使えばサーバーサイドでも動作可能です)。試験の文脈では、基本的に「ブラウザで動くもの」と覚えておきましょう。
ウの「あらかじめコンパイルする必要がある」について、JavaScriptはコンパイル(人間が書いたコードを機械語に変換する作業)を必要としないインタプリタ方式を採用しています。ブラウザがコードを直接読み取り、その場で実行するため、開発者にとって実行確認が容易という利点があります。
エの「Javaのスクリプト版である」は、ITパスポート試験で非常によく出る引っかけ問題です。名前は似ていますが、JavaScriptとJavaは全く別の言語です。歴史的な経緯で名前が似せられただけであり、Javaはコンパイルが必要な言語であるのに対し、JavaScriptはスクリプト言語であるなど、根本的な設計思想が異なります。
試験における知識の活用と構造
この問題は、Webシステムの「クライアント」と「サーバ」の役割分担を理解しているかを確認しています。
- クライアント(ブラウザ)の役割: HTMLを表示し、JavaScriptで見た目の変化や操作性(インタラクティブ性)を提供する。
- サーバの役割: データベースと通信し、必要な情報をクライアントに送る。
この構造を理解しておくと、Webサイトの仕組み全体が見えやすくなります。プログラミングの経験がなくても、「JavaScriptはブラウザの便利機能を追加するもの」というイメージを持っておけば、初見の問題でも正誤を判断できるようになります。