[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ja/docs/WebAssembly/Reference/JavaScript_interface/Global [Back]  [Original]

WebAssembly.Global - WebAssembly | MDN

MDN Web Docs

View in English Always switch to English

WebAssembly.Global

Baseline

20203

WebAssembly.Global JavaScript 1 WebAssembly.Module /

WebAssembly.Global()

Global

Global

Global Global() Global

Global.prototype.value

Global.prototype.constructor

WebAssembly.Global()

Global.prototype[Symbol.toStringTag]

[Symbol.toStringTag] "WebAssembly.Global"

Global.prototype.valueOf()

Global

WebAssembly.Global() (mutable) i32 0

Global.value 42 global.wasm incGlobal() 43 1

js
const output = document.getElementById("output");

function assertEq(msg, got, expected) {
  const result =
    got === expected
      ? `SUCCESS! Got: ${got}\n`
      : `FAIL!\nGot: ${got}\nExpected: ${expected}\n`;
  output.innerText += `Testing ${msg}: ${result}`;
}

assertEq("WebAssembly.Global exists", typeof WebAssembly.Global, "function");

const global = new WebAssembly.Global({ value: "i32", mutable: true }, 0);

WebAssembly.instantiateStreaming(fetch("global.wasm"), { js: { global } }).then(
  ({ instance }) => {
    assertEq(
      " wasm ",
      instance.exports.getGlobal(),
      0,
    );
    global.value = 42;
    assertEq(
      "JS  wasm ",
      instance.exports.getGlobal(),
      42,
    );
    instance.exports.incGlobal();
    assertEq("wasm  JS ", global.value, 43);
  },
);

WebAssembly JavaScript Interface
# globals


Web Proxy Viewer  |  New URL  |  Original Page