Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Oktober 2017 browserübergreifend verfügbar.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Das WebAssembly JavaScript-Objekt fungiert als Namensraum für alle mit WebAssembly verbundenen Funktionen.
Anders als die meisten anderen globalen Objekte ist WebAssembly kein Konstruktor (es ist kein Funktionsobjekt). Sie können es mit Math vergleichen, das ebenfalls ein Namensraumobjekt für mathematische Konstanten und Funktionen ist, oder mit Intl, welches das Namensraumobjekt für Internationalisierungskonstruktoren und andere sprachsensitive Funktionen ist.
Die Hauptanwendungen des WebAssembly-Objekts sind:
Weist auf einen Fehler bei der WebAssembly-Dekodierung oder -Validierung hin.
WebAssembly.GlobalStellt eine globale Variableninstanz dar, die sowohl von JavaScript aus zugänglich ist als auch über eine oder mehrere WebAssembly.Module-Instanzen importiert/exportiert werden kann. Dies ermöglicht das dynamische Verlinken mehrerer Module.
WebAssembly.InstanceIst eine zustandsbehaftete, ausführbare Instanz eines WebAssembly.Module.
WebAssembly.LinkErrorWeist auf einen Fehler bei der Modulinstanziierung hin (abgesehen von Traps aus der Startfunktion).
WebAssembly.MemoryEin Objekt, dessen buffer-Eigenschaft ein skalierbarer ArrayBuffer ist, der die Rohbytes des Speichers enthält, auf die von einer WebAssembly Instance zugegriffen wird.
WebAssembly.ModuleEnthält zustandslosen WebAssembly-Code, der bereits vom Browser kompiliert wurde und effizient mit Arbeitern geteilt werden kann und mehrfach instanziiert werden kann.
WebAssembly.RuntimeErrorFehlertyp, der immer dann ausgelöst wird, wenn WebAssembly eine Trap angibt.
WebAssembly.TableEine arrayähnliche Struktur, die eine WebAssembly-Tabelle darstellt, die Referenzen wie Funktionsreferenzen speichert.
WebAssembly.TagEin Objekt, das einen Typ einer WebAssembly-Ausnahme darstellt.
WebAssembly.ExceptionEin WebAssembly-Ausnahmeobjekt, das geworfen, gefangen und sowohl innerhalb als auch über die Grenzen von WebAssembly/JavaScript hinweg erneut geworfen werden kann.
Kompiliert ein WebAssembly.Module aus WebAssembly-Binärcode, wobei die Instanziierung als separater Schritt belassen wird.
WebAssembly.compileStreaming()Kompiliert ein WebAssembly.Module direkt aus einer gestreamten zugrunde liegenden Quelle, wobei die Instanziierung als separater Schritt belassen wird.
WebAssembly.instantiate()Die primäre API zum Kompilieren und Instanzieren von WebAssembly-Code, die sowohl ein Module als auch seine erste Instance zurückgibt.
WebAssembly.instantiateStreaming()Kompiliert und instanziiert ein WebAssembly-Modul direkt aus einer gestreamten zugrunde liegenden Quelle und gibt sowohl ein Module als auch seine erste Instance zurück.
WebAssembly.validate()Validiert ein gegebenes typisiertes Array aus WebAssembly-Binärcode und gibt zurück, ob die Bytes gültiger WebAssembly-Code (true) sind oder nicht (false).
Das folgende Beispiel (siehe unser instantiate-streaming.html Demo auf GitHub und sehen Sie es live auch) streamt direkt ein Wasm-Modul aus einer zugrunde liegenden Quelle, kompiliert und instanziiert es dann, wobei das Versprechen mit einem ResultObject erfüllt wird. Da die instantiateStreaming()-Funktion ein Versprechen für ein Response Objekt akzeptiert, können Sie ihr direkt einen fetch() Aufruf übergeben, und es wird die Antwort in die Funktion übergeben, wenn sie erfüllt wird.
Die .instance-Eigenschaft des ResultObject wird dann abgerufen und die darin enthaltene exportierte Funktion aufgerufen.
| WebAssembly JavaScript Interface # webassembly-namespace |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.