HTMLScriptElement: supports() 静的メソッド
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2022年9月.
supports() は HTMLScriptElement インターフェイスの静的メソッドで、ユーザーエージェントが対応しているスクリプトの種類を機能的に検出するための、単純で一貫したメソッドを提供します。
このメソッドは、ほとんどの現代のブラウザーが対応しているクラシックスクリプトとモジュールスクリプトに対して true を返すことが期待されています。
構文
HTMLScriptElement.supports(type)
引数
type-
対応しているかどうかを調べるスクリプトの種類を示す文字列リテラルです。 対応している値は以下の通りで、大文字と小文字が区別されます。
"classic"-
クラシックスクリプトに対応しているかどうかを検査します。 「クラシック」スクリプトとは、モジュールスクリプトより前の通常の、伝統的な JavaScript ファイルのことです。
"module"-
モジュールスクリプトに対応しているかどうかを検査します。
"importmap"-
インポートマップに対応しているかどうかを検査します。
"speculationrules"-
投機ルールに対応し、有効になっているかどうかを検査します。
他の値であれば、このメソッドは
falseを返します。
返値
指定されたスクリプトに対応している場合は true を、そうでない場合は false を返す。
例
下記のコードは HTMLScriptElement.supports() が定義されているかどうかを調べ、定義されている場合はそれを使用して特定の種類のスクリプトに対応しているかどうかを検査する方法を示しています。
const log = document.getElementById("log");
function checkSupport(type) {
const result = HTMLScriptElement.supports(type) ? "true" : "false";
log.textContent += `HTMLScriptElement.supports('${type}') は ${result}\n`;
}
if (typeof HTMLScriptElement.supports === "undefined") {
log.textContent = "HTMLScriptElement.supports() メソッドに対応していません";
} else {
// 様々な種類のスクリプトに対応しているかどうかをチェック
checkSupport("module");
checkSupport("classic");
checkSupport("importmap");
checkSupport("speculationrules");
// 他の値ならば、このメソッドは false を返す
checkSupport("anything else");
}
仕様書
| Specification |
|---|
| HTML> # dom-script-supports-dev> |
ブラウザーの互換性
Loading…
関連情報
HTMLScriptElement<script>- JavaScript モジュール
Workerコンストラクター