Movatterモバイル変換


[0]ホーム

URL:


  1. WebAssembly

Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.

View in EnglishAlways switch to English

WebAssembly

WebAssembly es un nuevo tipo de código que puede ser ejecutado en navegadores modernos — es un lenguaje de bajo nivel, similar al lenguaje ensamblador, con un formato binario compacto que se ejecuta con rendimiento casi nativo y provee un objetivo de compilación para lenguajes como C/C++ y Rust que les permite correr en la web. También está diseñado para correr a la par de JavaScript, permitiendo que ambos trabajen juntos.

En pocas palabras

WebAssembly tiene grandes implicaciones para la plataforma web — provee una forma de correr código escrito en múltiples lenguajes en la web a una velocidad casi nativa, con aplicaciones cliente corriendo en la web que anteriormente no podrían haberlo hecho.

WebAssembly esta diseñado para complementar y correr a la par de JavaScript — usando las APIs WebAssembly de JavaScript, puedes cargar módulos de WebAssembly en una aplicación JavaScript y compartir funcionalidad entre ambos. Esto te permite aprovechar el rendimiento y poder de WebAssembly y la expresividad y flexibilidad de JavaScript en las mismas aplicaciones, incluso si no sabes cómo escribir código WebAssembly.

Y lo mejor es que está siendo desarrollado como un estándar web a través delgrupo de trabajo de WebAssembly del W3C y sugrupo comunitario con las participación activa de todos los principales fabricantes de navegadores.

Guías

Conceptos de WebAssembly

Empieza leyendo los conceptos de alto nivel detrás de WebAssembly — qué es, por qué es tan útil, cómo encaja en la plataforma web (y más allá), y cómo usarlo.

Compilar un nuevo módulo de C/C++ a WebAssembly

Al escribir código en C/C++, puedes compilarlo a .wasm usando una herramienta comoEmscripten. Veamos cómo funciona.

Compilar un módulo existente de C a WebAssembly

Uno de los principales casos de uso para WebAssembly es tomar las librerías existentes del ecosistema de C y permitir que los desarrolladores los usen en la web.

Compilar de Rust a WebAssembly

Si has escrito algo en Rust, ¡puedes compilarlo a WebAssembly! Este tutorial te enseña todo lo que necesitas saber para compilar un proyecto de Rust a wasm y usarlo en una aplicación web existente.

Cargar y ejecutar código WebAssembly

Una vez que tengas un .wasm, este artículo cubre cómo recuperarlo, compilarlo e instanciarlo, combinando la API deWebAssembly de JavaScript con las APIsFetch oXHR.

Usar la API WebAssembly de JavaScript

Una vez cargado el módulo .wasm, querrás usarlo. En este artículo te mostramos cómo usar WebAssembly mediante la API WebAssembly de JavaScript.

Funciones exportadas de WebAssembly

Las funciones exportadas de WebAssembly son el reflejo en JavaScript de las funciones de WebAssembly que te permiten llamar código WebAssembly desde JavaScript. Este artículo las describe.

Entendiendo el formato de texto WebAssembly

Este artículo explica el formato de texto wasm. Esta es la representación textual de bajo nivel de un módulo .wasm, mostrada en las herramientas de desarrollador del navegador al depurar.

Convertir el formato de texto WebAssembly a wasm

Este artículo provee una guía para convertir un módulo de WebAssembly escrito en su formato de texto a un binario .wasm.

Referencia de la API

WebAssembly

Este objeto sirve como espacio de nombres para toda funcionalidad relacionada a WebAssembly.

WebAssembly.Global()

El objetoWebAssembly.Global representa una instancia variable global, accesible desde JavaScript e importable/exportable a través de una o más instancias deWebAssembly.Module. Esto permite el enlace dinámico de varios módulos.

WebAssembly.Module()

El objetoWebAssembly.Module contiene código WebAssembly sin estado que ha sido ya compilado por el navegador y puede sercompartido con workers e instanciado varias veces.

WebAssembly.Instance()

Un objetoWebAssembly.Instance es una instancia ejecutable y con estado de unModule. Los objetosInstance contienen todas lasfunciones exportadas de WebAssembly que permiten llamar a código WebAssembly desde JavaScript.

WebAssembly.instantiateStreaming()

La funciónWebAssembly.instantiateStreaming() es la principal API para compilar e instanciar código WebAssembly, retornando tanto unModule como su primeraInstance.

WebAssembly.Memory()

Un objetoWebAssembly.Memory es unArrayBuffer redimensionable que contiene los bytes de memoria accedidos por unaInstance.

WebAssembly.Table()

Un objetoWebAssembly.Table es un arreglo tipado redimensionable de valores opacos, como referencias a funciones, que son accedidos por unaInstance.

WebAssembly.CompileError()

Crea un nuevo objetoCompileError de WebAssembly.

WebAssembly.LinkError()

Crea un nuevo objetoLinkError de WebAssembly.

WebAssembly.RuntimeError()

Crea un nuevo objetoRuntimeError de WebAssembly.

Ejemplos

Especificaciones

Specification
WebAssembly JavaScript Interface
# webassembly-namespace
WebAssembly JavaScript Interface
# ref-for-syntax-numtype①⓪
WebAssembly JavaScript Interface
# dom-globaldescriptor-mutable
Unknown specification
Unknown specification
Unknown specification
Unknown specification
Unknown specification
Unknown specification
Unknown specification
Unknown specification
Unknown specification
Unknown specification
Unknown specification
WebAssembly Core: Garbage Collection
# garbage-collection①

Ver también

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2026 Movatter.jp