WebAssemblyBaseline · Widely available
The WebAssembly.instantiate() and WebAssembly.instantiateStreaming() global static methods load WebAssembly code (also known as Wasm), a portable binary instruction format.
Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Oct 17, 2017. Widely available since Apr 17, 2020.
Browser support
DesktopChrome
1–56Not supported
57+Supportedsince Mar 9, 2017
Current: 155Edge
12–15Not supported
16+Supportedsince Oct 17, 2017
Current: 154Firefox
1–51Not supported
52+Supportedsince Mar 7, 2017
Current: 157Safari
1–10.1Not supported
11+Supportedsince Sep 19, 2017
Current: 27MobileChrome Android
18–56Not supported
57+Supportedsince Mar 16, 2017
Current: 155Firefox Android
4–51Not supported
52+Supportedsince Mar 7, 2017
Current: 157Safari iOS
1–10.3Not supported
11+Supportedsince Sep 19, 2017
Current: 27How to use
This feature is Baseline widely available — use it freely, no fallback needed.
Example
Full syntax and examples are on MDN: JavaScript interface.
Feature detection
There’s no simple runtime check for this feature; rely on the support table and test in your target browsers.
Documentation (MDN)
Specification
Usage share
Sub-features
Support for each part of the feature (34). The overall table above shows when the whole feature works.
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| webassembly.api | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.CompileError | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.CompileError.CompileError | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Global | 69 | 79 | 62 | 13.1 | 69 | 62 | 13.4 |
| webassembly.api.Global.Global | 69 | 79 | 62 | 13.1 | 69 | 62 | 13.4 |
| webassembly.api.Global.value | 69 | 79 | 62 | 13.1 | 69 | 62 | 13.4 |
| webassembly.api.Global.valueOf | 69 | 79 | 62 | 13.1 | 69 | 62 | 13.4 |
| webassembly.api.Instance | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Instance.Instance | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Instance.exports | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.LinkError | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.LinkError.LinkError | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Memory | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Memory.Memory | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Memory.buffer | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Memory.grow | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Module | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Module.Module | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Module.customSections_static | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Module.exports_static | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
Show 14 more
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| webassembly.api.Module.imports_static | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.RuntimeError | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.RuntimeError.RuntimeError | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Table | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Table.Table | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Table.get | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Table.grow | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Table.length | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.Table.set | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.compileStreaming_static | 60 | 16 | 58 | 15 | 60 | 58 | 15 |
| webassembly.api.compile_static | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.instantiateStreaming_static | 60 | 16 | 58 | 15 | 60 | 58 | 15 |
| webassembly.api.instantiate_static | 57 | 16 | 52 | 11 | 57 | 52 | 11 |
| webassembly.api.validate_static | 57 | 16 | 52 | 11 | 57 | 52 | 11 |