Explorons l'idée opposée. Imagine que nous voulons envoyer du texte vers notre programme WebAssembly.
Nous devons:
Voici un exemple de ce à quoi ressemble cette initialisation:
// Transforme "Ferris" en octets.
const utf8enc = new TextEncoder("utf-8");
let text = "Ferris";
let text_bytes = utf8enc.encode(text);
// Alloue de l'espace mémoire pour le texte.
let len = text_bytes.length;
let start = module.instance.exports.wasm_malloc(len);
// Met le texte dans la mémoire du programme WebAssembly.
let buffer = module.instance.exports.memory.buffer;
let memory = new Uint8Array(buffer);
memory.set(text_bytes, start);
// Exécute le programme.
module.instance.exports.main(start,len);