[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/es/docs/WebAssembly/Reference/JavaScript_interface [Back]  [Original]

WebAssembly - WebAssembly | MDN

Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.

View in English Always switch to English

WebAssembly

Baseline Widely available *

This feature is well established and works across many devices and browser versions. Its been available across browsers since octubre de 2017.

* Some parts of this feature may have varying levels of support.

El objeto WebAssembly de JavaScript actua como un namespace para todas las funcionalidades realcionados con WebAssembly.

A diferencia de otros objetos globales, WebAssembly no tiene un constructor (no tiene una funcin para crear el objeto). Puedes ser comparado con el objeto Math, que tambin es un namespace, para funciones y constantes matemticas, o tambin con Intl que es un namespace para internacionalizacin y otras funciones de idioma.

In this article

Descripcin

Los usos primarios para el objeto WebAssembly son:

Mtodos

WebAssembly.instantiate()

El API primaria para compilar e instanciar cdigo WebAssembly, ambos regresan un Module y el primero Instance.

WebAssembly.instantiateStreaming()

Compila e instancia un mdulo WebAssembly directamente desde un flujo de origen subyacente, ambos regresan un Module y el primero Instance.

WebAssembly.compile()

Compila un WebAssembly.Module desde el cdigo binario de un WebAssembly, manteniendo la creacin de la instancia como un objeto separado.

WebAssembly.compileStreaming()

compila un WebAssembly.Module directamente desde un flujo de origen subyacente, manteniendo la creacin de la instancia como un objeto sepraado.

WebAssembly.validate()

Valida un arreglo con tipo de cdigo binario de un WebAssembly, regresando si los bytes son cdigo vlido WebAssembly (true) o de lo contrario (false).

Constructores

WebAssembly.Module()

Crea un nuevo objeto WebAssembly Module.

WebAssembly.Instance()

Crear un nuevo objeto WebAssembly Instance.

WebAssembly.Memory()

Crear un nuevo objeto WebAssembly Memory.

WebAssembly.Table()

Crear un nuevo objeto WebAssembly Table.

WebAssembly.CompileError()

Crear un nuevo objeto WebAssembly CompileError.

WebAssembly.LinkError()

Crear un nuevo objeto WebAssembly LinkError.

WebAssembly.RuntimeError()

Crear un nuevo objeto WebAssembly RuntimeError.

Ejemplos

Despus de obtener algn bytecode de WebAssembly usando la sentencia fetch, nosotros compilamos e instanciamos el mdulo usando la funcin WebAssembly.instantiate() , importando una funcin de JavaScript en el WebAssembly Module en el proceso. Esta premisa resuelve a un objeto (result) que contenga un objeto Module compilado y un objeto Instance . Entonces tenemos una llamada a Exported WebAssembly function que es exportada por Instance.

js
var importObject = {
  imports: {
    imported_func: function (arg) {
      console.log(arg);
    },
  },
};

fetch("simple.wasm")
  .then((response) => response.arrayBuffer())
  .then((bytes) => WebAssembly.instantiate(bytes, importObject))
  .then((result) => result.instance.exports.exported_func());

Nota: Ver index.html en GitHub (view it live also) para un ejemplo que hace uso de la funcin fetchAndInstantiate().

Especificaciones

Specification
WebAssembly JavaScript Interface
# webassembly-namespace

Compatibilidad con navegadores

Ver tambin


Web Proxy Viewer  |  New URL  |  Original Page