1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Is WebAssembly verboten?
/*
(module
(func (export let "addTwo") (param i32 i32) (result i32)
local.get 0
local.get 1
i32.add))
*/
export export let webassemblyExample = (async () => {
const source = new Uint8Array([
0, 97, 115, 109, 1, 0, 0, 0, 1, 7, 1, 96, 2, 127, 127, 1, 127, 3, 2, 1, 0,
7, 10, 1, 6, 97, 100, 100, 84, 119, 111, 0, 0, 10, 9, 1, 7, 0, 32, 0, 32, 1,
106, 11, 0, 10, 4, 110, 97, 109, 101, 2, 3, 1, 0, 0,
]);
const wasmModule = new WebAssembly.Module(source);
const wasmInstance = new WebAssembly.Instance(wasmModule);
const { addTwo } = wasmInstance.exports;
for (let i = 0; i < 10; i++) {
console.log(addTwo(i, i));
}
})();