Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
WebAssembly.Memory.prototype.buffer
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Oktober 2017.
Die schreibgeschütztebuffer-Prototyp-Eigenschaft desWebAssembly.Memory-Objekts gibt den Puffer zurück, der im Speicher enthalten ist. Abhängig davon, ob der Speicher mitshared: true konstruiert wurde oder nicht, ist der Puffer entweder einArrayBuffer oder einSharedArrayBuffer.
In diesem Artikel
Beispiele
>Verwendung von buffer
Das folgende Beispiel (siehememory.html auf GitHub, undlive ansehen) lädt und instanziiert den geladenen memory.wasm-Bytecode mit der FunktionWebAssembly.instantiateStreaming(), während es den in der obigen Zeile erstellten Speicher importiert. Anschließend speichert es einige Werte in diesem Speicher, exportiert eine Funktion und verwendet die exportierte Funktion, um diese Werte zu summieren.
const memory = new WebAssembly.Memory({ initial: 10, maximum: 100,});WebAssembly.instantiateStreaming(fetch("memory.wasm"), { js: { mem: memory },}).then((obj) => { const summands = new DataView(memory.buffer); for (let i = 0; i < 10; i++) { summands.setUint32(i * 4, i, true); // WebAssembly is little endian } const sum = obj.instance.exports.accumulate(0, 10); console.log(sum);});Spezifikationen
| Specification |
|---|
| WebAssembly JavaScript Interface> # dom-memory-buffer> |