Skip to main content
namespace WebAssembly

Classes

The WebAssembly.CompileError object indicates an error during WebAssembly decoding or validation.

A WebAssembly.Global object represents a global variable instance, accessible from both JavaScript and importable/exportable across one or more WebAssembly.Module instances. This allows dynamic linking of multiple modules.

A WebAssembly.Instance object is a stateful, executable instance of a WebAssembly.Module. Instance objects contain all the Exported WebAssembly functions that allow calling into WebAssembly code from JavaScript.

The WebAssembly.LinkError object indicates an error during module instantiation (besides traps from the start function).

The WebAssembly.Memory object is a resizable ArrayBuffer or SharedArrayBuffer that holds the raw bytes of memory accessed by a WebAssembly Instance.

A WebAssembly.Module object contains stateless WebAssembly code that has already been compiled by the browser — this can be efficiently shared with Workers, and instantiated multiple times.

The WebAssembly.RuntimeError object is the error type that is thrown whenever WebAssembly specifies a trap.

The WebAssembly.Table() object is a JavaScript wrapper object — an array-like structure representing a WebAssembly Table, which stores function references. A table created by JavaScript or in WebAssembly code will be accessible and mutable from both JavaScript and WebAssembly.

Functions

The WebAssembly.compile() function compiles WebAssembly binary code into a WebAssembly.Module object. This function is useful if it is necessary to compile a module before it can be instantiated (otherwise, the WebAssembly.instantiate() function should be used).

The WebAssembly.compileStreaming() function compiles a WebAssembly.Module directly from a streamed underlying source. This function is useful if it is necessary to a compile a module before it can be instantiated (otherwise, the WebAssembly.instantiateStreaming() function should be used).

The WebAssembly.instantiate() function allows you to compile and instantiate WebAssembly code.

The WebAssembly.instantiateStreaming() function compiles and instantiates a WebAssembly module directly from a streamed underlying source. This is the most efficient, optimized way to load wasm code.

The WebAssembly.validate() function validates a given typed array of WebAssembly binary code, returning whether the bytes form a valid wasm module (true) or not (false).

Interfaces

The GlobalDescriptor describes the options you can pass to new WebAssembly.Global().

The MemoryDescriptor describes the options you can pass to new WebAssembly.Memory().

A ModuleExportDescriptor is the description of a declared export in a WebAssembly.Module.

A ModuleImportDescriptor is the description of a declared import in a WebAssembly.Module.

The TableDescriptor describes the options you can pass to new WebAssembly.Table().

The value returned from WebAssembly.instantiate.