【JavaScript】JavaScriptとは?ブラウザで動くプログラミング言語を初心者向けに解説

javascript-icon JavaScript

こんにちは、かつコーチです。

これまでJavaScriptについて100記事ほど書いて来ました。

ここで一度立ち返って、もう一度JavaScriptの基礎からご紹介します。

新しくアップデートされている内容もあるので、それも含めて随時解説します。

「JavaScriptって聞いたことはあるけど、結局何をする言語なの?」

プログラミング学習を始めようとすると、真っ先に候補に挙がるのがこのJavaScriptです。

React・Vue.js・Node.jsなど関連する名前も多く、最初は混乱しやすい分野でもあります。

今回はJavaScriptにまったく触れたことがない人にも伝わるように、基本からかみ砕いて解説していきます。

JavaScriptとは?

正式名称と読み方

JavaScriptは、そのまま「ジャバスクリプト」と読みます。

名前に「Java」が入っていますが、Javaという別のプログラミング言語とはほとんど関係がありません。

登場した1995年当時、話題になっていたJavaの人気にあやかって名付けられた、というのが実際のところです。

ひとことで言うと、Webページに「動き」や「反応」を加えるためのプログラミング言語です。

HTML・CSSとの役割の違い

Webページは、主に3つの技術の組み合わせでできています。

  • HTML:文章や画像など、ページの「構造」を作る
  • CSS:色やレイアウトなど、ページの「見た目」を整える
  • JavaScript:クリックや入力への「反応」を作る

たとえば、ボタンを押すとメニューが開いたり、フォームに入力した内容をその場でチェックしたりする動きは、すべてJavaScriptが担当しています。

私が最初に学び始めたときも、「HTMLとCSSだけでは画面は動かないんだ」と気づいた瞬間が、JavaScriptの必要性を実感した最初のきっかけでした。

HTMLとCSSで「静止画」を作り、JavaScriptで「命を吹き込む」とイメージすると整理しやすいです。

JavaScriptでどんなことができるの?

身近な使用例

代表的なところだと、こんな動きがJavaScriptで作られています。

  • ハンバーガーメニューの開閉
  • 画像スライダー・カルーセル
  • 入力フォームのリアルタイムバリデーション
  • スクロールに合わせたアニメーション

普段何気なく操作しているWebサイトの「動く部分」は、ほぼすべてJavaScriptだと考えて差し支えありません。

ブラウザ以外でも動くようになった

JavaScriptはもともと「ブラウザの中だけで動く言語」でした。

しかし今では、Node.jsという実行環境を使うことで、ブラウザの外(サーバー側)でも動かせるようになっています。

このおかげで、フロントエンド(画面側)とバックエンド(サーバー側)の両方をJavaScriptだけで開発できるケースも増えています。

混同しやすい関連技術との関係を整理する

JavaScriptエコシステムの技術マップ

JavaScriptを学び始めると、TypeScript・React・Vue.js・Node.jsなど、似たような名前がたくさん出てきて混乱しがちです。

ここで一度、それぞれの関係性を簡単に整理しておきましょう。

JavaScript(言語本体)
├── TypeScript … JavaScriptに「型」を追加した言語
├── jQuery … JavaScriptを簡単に書くためのライブラリ
├── React … UIを部品化して作るためのライブラリ
│    └── Next.js … Reactに機能を足したフレームワーク
├── Vue.js … 学習しやすい設計のフロントエンドフレームワーク
│    └── Nuxt.js … Vueに機能を足したフレームワーク
└── Node.js … ブラウザの外でJavaScriptを動かす実行環境
     └── Express … Node.js上でサーバーを作るための軽量フレームワーク

「本体」と「拡張」の関係を押さえる

この図で特に注目してほしいのが、React⇄Next.jsVue.js⇄Nuxt.jsが、どちらも同じ関係性になっている点です。

ReactはUIを部品化して作るための「本体」で、Next.jsはそのReactに「ページ移動の仕組み」や「表示を速くする仕組み」を足した拡張版という位置づけです。

Vue.jsとNuxt.jsも、まったく同じ関係にあります。

Vue.jsが「本体」、Nuxt.jsがそこに機能を足した拡張版です。

つまり「React系を選ぶか、Vue系を選ぶか」を決めれば、その先の「素の状態で使うか、拡張版を使うか」という考え方は共通しているということです。

TypeScriptだけは少し毛色が違って、これらのライブラリ・フレームワークと並列の選択肢ではなく、「JavaScriptの書き方」そのものを拡張する存在です。

JavaScriptで書いたコードに型のルールを追加できる言語、とイメージしておいてください。

今回のシリーズで学ぶのはどこか

このシリーズで扱うのは、図の一番上にあるJavaScript本体の部分です。

React・Vue.js・Node.jsなど、この先に広がる技術はすべてJavaScriptの文法や考え方を土台にしています。

つまり、今JavaScriptの基礎をしっかり固めておくことが、将来どの技術に進むにしても一番の近道になります。

JavaScriptが今も選ばれ続ける理由

動かせる環境が特別

JavaScriptは、パソコンにブラウザさえ入っていれば、特別な準備なしにすぐ動かせます。

他の言語のように専用のソフトをインストールする必要がなく、学習を始めるハードルがとても低いのが特徴です。

求人・案件の需要が高い

Web制作・Webアプリ開発の現場では、フロントエンドの実装にほぼ必ずJavaScriptが使われます。

React・Vue.jsといった人気フレームワークの土台になっているため、学んでおくと選べる仕事の幅が広がります。

情報量が豊富

長く使われている言語なので、エラーで詰まってもたいてい検索すれば解決策が見つかります。

私自身、独学で触り始めた頃はエラーメッセージをそのまま検索するということを繰り返していましたが、それでも挫折せずに続けられたのは、同じ悩みを持つ先人の記事がすぐに見つかったからです。

JavaScriptを実際に動かすとこんな感じ

シンプルなコード例

イメージをつかんでもらうために、簡単なコードを見てみましょう。

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>JavaScriptサンプル</title>
</head>
<body>
  <button id="greetButton">挨拶する</button>

  <script>
    const name = "かつコーチ";

    document.getElementById("greetButton").addEventListener("click", function () {
      alert("こんにちは、" + name + "さん!");
    });
  </script>
</body>
</html>

このHTMLをブラウザで開いてボタンを押すと、「こんにちは、かつコーチさん!」というポップアップが表示されます。

document.getElementById でボタンを取得し、addEventListener でクリックされたときの処理を登録している、というのが今回のコードの流れです。

難しい単語もありますが、今の段階では「JavaScriptを使うとページに反応をつけられるんだな」という雰囲気だけつかめれば十分です。

具体的な書き方は、次回以降の記事で順を追って解説していきます。

静止画のページと動きのあるページを比べてみる

「動き」のイメージがまだ湧かない人のために、JavaScriptがない場合とある場合を比べてみましょう。

❌ Before:HTMLだけ(クリックしても何も起きない)

<button>挨拶する</button>

このコードは、ボタンを押しても見た目が変わるだけで、画面上には何の反応も起きません。

✅ After:JavaScriptを使った場合(クリックに反応する)

<button id="greetButton">挨拶する</button>

<script>
  document.getElementById("greetButton").addEventListener("click", function () {
    document.body.insertAdjacentHTML("beforeend", "<p>ボタンが押されました!</p>");
  });
</script>

ボタンを押すたびに、画面の下に新しい文章が追加されるようになります。

「HTMLで作った部品に、JavaScriptで反応を後付けする」——これがJavaScriptの基本的な役割です。

まとめ

この記事のポイント

  • JavaScriptは、Webページに「動き」や「反応」を加えるプログラミング言語
  • TypeScript・React・Vue.js・Node.jsなどは、JavaScript本体から派生した技術
  • React⇄Next.js、Vue.js⇄Nuxt.jsは、どちらも「本体+拡張フレームワーク」という同じ関係性
  • このシリーズでは、まずすべての土台になるJavaScript本体の基礎を学んでいく

次に読むべき記事

次回は、実際にJavaScriptのコードを試しながら動かせる「開発者ツール」の使い方を解説します。

手を動かして初めて「わかった」につながるので、ぜひ一緒に進めていきましょう。

→ 次の記事:ブラウザの開発者ツールの使い方:コンソールを使ってみよう

タイトルとURLをコピーしました