scriptタグ -JavaScript を HTML 文書内で実行する|HTML辞典

<script>タグとは?

<script> タグは、JavaScript を HTML 文書内で実行するためのタグです。
内部スクリプトや外部ファイルの読み込みに使用され、Web ページの動的な動作を制御できます。

コンテンツモデル

メタデータコンテンツ(Metadata Content)、フローコンテンツ(Flow Content)。

閉じタグの有無

<script>開始タグ(<script>)と閉じタグ(</script>)の両方が必要 です。
(ただし src 属性を指定する場合は、自己終了タグ <script> は使用できません。)

基本的な記述方法

<script>
console.log("Hello, World!");
</script>

使用できる主な属性

<script> タグには、JavaScript の読み込みや実行方法を制御するための属性があります。

属性名説明
src外部スクリプトの URL を指定<script src="script.js"></script>
asyncスクリプトを非同期で実行(他の処理と並行)<script src="script.js" async></script>
deferスクリプトを HTML の解析後に実行<script src="script.js" defer></script>
typeスクリプトの MIME タイプ(通常 text/javascript<script type="module"></script>
nomodule古いブラウザでの実行を防ぐ(type="module" と併用)<script nomodule src="legacy.js"></script>

CSSを使ったデザイン変更

<script> 自体にはデザイン変更は適用されませんが、JavaScript を使ってスタイルを変更できます。

<script>
document.body.style.backgroundColor = "lightblue";
</script>

適切な使用例

✅ 内部 JavaScript を記述する

<script>
alert("ページが読み込まれました!");
</script>

✅ 外部 JavaScript ファイルを読み込む

<script src="main.js"></script>

async 属性でスクリプトを非同期に実行する

<script src="script.js" async></script>

defer 属性で HTML の解析後に実行する

<script src="script.js" defer></script>

適切でない使用例(誤った使い方)

src と JavaScript の直接記述を同時に使用する

<!-- NG: src を指定しているのに、スクリプトを記述している -->
<script src="script.js">
console.log("Hello");
</script>

正しい書き方(src を指定する場合はスクリプトを記述しない)

<script src="script.js"></script>

<script><head> 内に記述し、実行をブロックしてしまう

<!-- NG: head 内にスクリプトを記述 -->
<head>
<script src="script.js"></script>
</head>

正しい書き方(defer を指定する)

<head>
<script src="script.js" defer></script>
</head>

<script>タグと他のタグの違い

タグ役割特徴適切な用途
<script>JavaScript を実行src または内部スクリプトを記述ページの動的制御
<noscript>JavaScript が無効な場合の代替表示<script> のフォールバックJavaScript 非対応時のメッセージ表示
<link>外部 CSS を読み込むrel="stylesheet" を指定スタイルシートの適用

使用上の注意点

asyncdefer の違いを理解する

  • async はダウンロード完了後すぐに実行 され、他のスクリプトの順番が保証されない。
  • defer は HTML の解析が終わってから順番通りに実行 されるため、安全に利用できる。

type="module" を活用して ES6 モジュールを利用する

  • type="module" を指定すると、スクリプトを ES6 のモジュールとして扱える。

関連タグ

  • <noscript> – JavaScript が無効な場合の代替表示
  • <link> – 外部 CSS を読み込む
  • <meta> – メタデータの設定

まとめ

<script> タグは、HTML文書内で JavaScript を実行するためのタグ です。
内部スクリプトや外部ファイルを指定し、Web ページの動的な処理を実装する際に活用されます。