HTMLのscriptタグのtype属性について
.html
ファイルでスクリプト(Javascriptのファイル)を読み込む際、下記のようなscriptタグを使うときの、type
属性について調査した<script type="text/javascript" src="./app.js"></script>
概要
type
属性はscriptの種類を指定し、それに合わせてHTMLがscriptを読み込む- とりうる種類は下記の3通り(それ以外の
type
を設定した場合、scriptタグが無視される)- MIMEタイプ
- デフォルト値のため、scriptタグに
type
属性を設定しない場合、text/javascript
が設定される(Javascriptファイルをsrc属性に設定している場合を考えている) - 詳細はこちら:MIMEタイプについて
- デフォルト値のため、scriptタグに
- module
- Javascriptファイルがmoduleとして扱われる
- importmap
- Javascriptファイルがimport mapとして扱われる
- MIMEタイプ
MIMEタイプ
- MIMEタイプの基本的な内容はこちら:MIMEタイプについて
- カスタムMIMEタイプを定義することもできる
- 例:Reactで用いられるJSXはBabelというJavascriptコンパイラーをロードして、
type=text/babel
を設定することで使用することができる(簡単な使用例はこちら:WordPressの記事に「手軽に」Reactアプリを埋め込む方法)
- 例:Reactで用いられるJSXはBabelというJavascriptコンパイラーをロードして、
module
- srcに設定したJavascriptファイル内で
export
をラベル付けしたオブジェクト(変数・関数)を、import
宣言でインポートして利用することができる - 例
import {sayHi} from './sayHi.js';
importmap
- import mapは、JavaScript moduleをインポートするときにブラウザーがモジュール指定子を解決する方法を制御できるようにするJSON オブジェクト(
import
宣言でどう書いたら何がインポートされるかを決めるJSON) - 例
<script type="importmap"> { "imports": { "dayjs": "https://cdn.skypack.dev/dayjs@1.10.7", } } </script> <script type="module"> import dayjs from 'dayjs'; </script>
参照
- https://www.geeksforgeeks.org/html-script-type-attribute/
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types
- https://ja.javascript.info/modules-intro
- https://www.freecodecamp.org/news/javascript-modules-explained-with-examples/
- https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script/type/importmap
ディスカッション
コメント一覧
まだ、コメントがありません