これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

WebAssembly.validate() 関数は WebAssembly バイナリコードを含む 型付き配列 をバリデーションし、バイト列が有効な wasm モジュール (true) か、そうでないか (false) を返します。

構文

WebAssembly.validate(bufferSource);

パラメータ

bufferSource
バリデーションする WebAssembly バイナリコードを含む 型付き配列 か ArrayBuffer 。

戻り値

有効な wasm モジュール (true) か、そうでないか (false) を示す boolean 値。

例外

bufferSource が 型付き配列 か ArrayBuffer でない場合、TypeError がスローされます。

以下の例 (validate.html の ソースコード と 動作例 をご確認ください) は .wasm モジュールをフェッチして型付き配列に変換します。次に、 validate() メソッドを使用してモジュールが有効かどうかをチェックします。

fetch('simple.wasm').then(response =>
  response.arrayBuffer()
).then(function(bytes) {
  var valid = WebAssembly.validate(bytes);
  console.log("The given bytes are "
    + (valid ? "" : "not ") + "a valid wasm module");
});

仕様

仕様 策定状況 コメント
WebAssembly JavaScript Interface
validate() の定義
草案 初回ドラフト定義。

ブラウザ実装状況

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung InternetNode.js
基本対応Chrome 完全対応 57Edge 完全対応 16Firefox 完全対応 52
補足
完全対応 52
補足
補足 Disabled in the Firefox 52 Extended Support Release (ESR).
IE 未対応 なしOpera 完全対応 44Safari 完全対応 11WebView Android 完全対応 57Chrome Android 完全対応 57Edge Mobile 完全対応 あり
無効
完全対応 あり
無効
無効 This feature is behind the Experimental JavaScript Features preference.
Firefox Android 完全対応 52
補足
完全対応 52
補足
補足 Disabled in the Firefox 52 Extended Support Release (ESR).
Opera Android ? Safari iOS 完全対応 11Samsung Internet Android 完全対応 7.0nodejs 完全対応 8.0.0

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。
ユーザーが明示的にこの機能を有効にしなければなりません。
ユーザーが明示的にこの機能を有効にしなければなりません。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: ukyo
最終更新者: ukyo,