Get to know MDN better
Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis octobre 2017.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
L'objet JavaScript WebAssembly sert d'espace de noms pour toutes les fonctionnalités liées à WebAssembly.
À la différence des autres objets globaux, WebAssembly n'est pas un constructeur (ce n'est pas un objet fonction). Vous pouvez le comparer à Math, qui est également un objet espace de noms pour les constantes et fonctions mathématiques, ou à Intl, qui est l'objet espace de noms pour les constructeurs d'internationalisation et autres fonctions sensibles à la langue.
L'objet WebAssembly est notamment utilisé pour :
Indique une erreur lors du décodage ou de la validation de WebAssembly.
WebAssembly.GlobalReprésente une instance de variable globale, accessible à la fois depuis JavaScript et importable/exportable entre une ou plusieurs instances de WebAssembly.Module. Cela permet le lien dynamique de plusieurs modules.
WebAssembly.InstanceEst une instance exécutable et avec état d'un WebAssembly.Module
WebAssembly.LinkErrorIndique une erreur lors de l'instanciation d'un module (autre que les pièges de capture (angl.) de la fonction de démarrage).
WebAssembly.MemoryUn objet dont la propriété buffer est un objet ArrayBuffer redimensionnable qui contient les octets bruts de la mémoire accessible par une Instance WebAssembly.
WebAssembly.ModuleContient du code WebAssembly sans état qui a déjà été compilé par le navigateur et peut être efficacement partagé avec des Workers, et instancié plusieurs fois.
WebAssembly.RuntimeErrorType d'erreur qui est levé chaque fois que WebAssembly définit un piège (angl.).
WebAssembly.TableUne structure de type tableau représentant une table WebAssembly, qui stocke des références (angl.), telles que des références de fonctions.
WebAssembly.TagUn objet qui représente un type d'exception WebAssembly.
WebAssembly.ExceptionUn objet d'exception WebAssembly qui peut être levé, capturé et relancé à la fois à l'intérieur et à travers les frontières WebAssembly/JavaScript.
Compile un WebAssembly.Module à partir de code binaire WebAssembly, laissant l'instanciation comme une étape séparée.
WebAssembly.compileStreaming()Compile un WebAssembly.Module directement à partir d'une source sous-jacente en flux, laissant l'instanciation comme une étape séparée.
WebAssembly.instantiate()L'API principale pour compiler et instancier du code WebAssembly, retournant à la fois un Module et sa première Instance.
WebAssembly.instantiateStreaming()Compile et instancie directement un module WebAssembly à partir d'une source sous-jacente en flux, retournant à la fois un Module et sa première Instance.
WebAssembly.validate()Valide un tableau typé donné de code binaire WebAssembly, renvoyant true si les octets sont un code WebAssembly valide ou false sinon.
L'exemple suivant (voir notre démonstration instantiate-streaming.html (angl.) sur GitHub, et la voir en direct (angl.) également) diffuse directement un module WebAssembly depuis une source sous-jacente, puis le compile et l'instancie, la promesse étant résolue en un ResultObject. Comme la fonction instantiateStreaming() accepte une promesse pour un objet Response, vous pouvez lui passer directement un appel à fetch(), et elle transmettra la réponse à la fonction lorsque la promesse sera résolue.
On accède ensuite à la propriété .instance du ResultObject, puis on invoque la fonction exportée qu'elle contient.
| WebAssembly JavaScript Interface # webassembly-namespace |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 17 avr. 2026 par les contributeur·ice·s du MDN.
Votre modèle pour un internet meilleur.
Visitez la société mère à but non lucratif de Mozilla Corporation, la Fondation Mozilla.
Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—2026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.