aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/javascript/reference/global_objects/webassembly/module
diff options
context:
space:
mode:
authorSphinxKnight <SphinxKnight@users.noreply.github.com>2021-12-21 08:46:38 +0100
committerGitHub <noreply@github.com>2021-12-21 08:46:38 +0100
commitf755ec1090fa10c62f91b170ae2dcc578a05d439 (patch)
treeef09f1ac5579483d4f296a1f30b1b0bbdc1e9b95 /files/fr/web/javascript/reference/global_objects/webassembly/module
parent804835deddcb1a4234708e5ee00cad04177b1e03 (diff)
downloadtranslated-content-f755ec1090fa10c62f91b170ae2dcc578a05d439.tar.gz
translated-content-f755ec1090fa10c62f91b170ae2dcc578a05d439.tar.bz2
translated-content-f755ec1090fa10c62f91b170ae2dcc578a05d439.zip
Translate missing WASM JS API pages (#3184)
Diffstat (limited to 'files/fr/web/javascript/reference/global_objects/webassembly/module')
-rw-r--r--files/fr/web/javascript/reference/global_objects/webassembly/module/module/index.md66
1 files changed, 66 insertions, 0 deletions
diff --git a/files/fr/web/javascript/reference/global_objects/webassembly/module/module/index.md b/files/fr/web/javascript/reference/global_objects/webassembly/module/module/index.md
new file mode 100644
index 0000000000..e0392428a7
--- /dev/null
+++ b/files/fr/web/javascript/reference/global_objects/webassembly/module/module/index.md
@@ -0,0 +1,66 @@
+---
+title: Constructeur WebAssembly.Module()
+slug: Web/JavaScript/Reference/Global_Objects/WebAssembly/Module/Module
+translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/Module/Module
+browser-compat: javascript.builtins.WebAssembly.Module.Module
+---
+{{JSRef}}
+
+Le constructeur **`WebAssembly.Module()`** crée un nouvel objet `Module` contenant du code WebAssembly sans état qui a déjà été compilé par le navigateur et qui peut efficacement [être partagé avec des workers](/fr/docs/Web/API/Worker/postMessage) et être instancié plusieurs fois.
+
+Le constructeur `WebAssembly.Module()` peut être appelé de façon synchrone afin de compiler le code binaire WebAssembly correspondant. Toutefois, la méthode principale pour obtenir un `Module` consiste à utiliser une fonction de compilation asynchrone comme [`WebAssembly.compile()`](/fr/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/compile).
+
+## Syntaxe
+
+> **Attention :** Étant donné que la compilation de grands modules peut être coûteuse, il est préférable d'utiliser `Module()` uniquement lorsqu'une compilation synchrone est nécessaire. Dans tous les autres cas, on privilégiera la méthode [`WebAssembly.compileStreaming()`](/fr/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/compileStreaming).
+
+```js
+new WebAssembly.Module(bufferSource)
+```
+
+### Parameters
+
+- _bufferSource_
+ - : Un [tableau typé](/fr/docs/Web/JavaScript/Typed_arrays) ou un [`ArrayBuffer`](/fr/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer) contenant le code binaire du module .wasm qu'on souhaite compiler.
+
+## Exemples
+
+### Compiler un module WebAssembly de façon synchrone
+
+```js
+var importObject = {
+ imports: {
+ imported_func: function(arg) {
+ console.log(arg);
+ }
+ }
+};
+
+function createWasmModule(bytes) {
+ return new WebAssembly.Module(bytes);
+}
+
+fetch('simple.wasm').then(response =>
+ response.arrayBuffer()
+).then(bytes => {
+ let mod = createWasmModule(bytes);
+ WebAssembly.instantiate(mod, importObject)
+ .then(result =>
+ result.exports.exported_func()
+ );
+})
+```
+
+## Spécifications
+
+{{Specifications}}
+
+## Compatibilité des navigateurs
+
+{{Compat}}
+
+## Voir aussi
+
+- La page [WebAssembly](/fr/docs/WebAssembly)
+- [Concepts WebAssembly](/fr/docs/WebAssembly/Concepts)
+- [Utiliser l'API JavaScript WebAssembly](/fr/docs/WebAssembly/Using_the_JavaScript_API)