在线文档教程

WebAssembly.instance

WebAssembly.instance

This is an experimental technology

在使用此产品之前,请仔细检查浏览器兼容性表。

WebAssembly.Instance实例对象是有状态,可执行的WebAssembly.Module实例。实例中包含了所有可以被 JavaScript调用的WebAssembly代码导出的函数。

WebAssembly.Instance()构造函数可以调用同步实例化一个给定的WebAssembly.Module对象。但是,获取Instance的主要方法是通过异步WebAssembly.instantiate()函数。

构造函数语法

重要说明:由于大型模块的实例化价格比较贵,开发人员Instance()在绝对需要同步实例时只应使用构造函数。WebAssembly.instantiate()应该在其他时间使用异步方法。

var myInstance = new WebAssembly.Instance(module, importObject

参数

_module_ WebAssembly.Module是要实例化的对象._importObject_Optional 包含要导入到新创建的值Instance(例如函数或WebAssembly.Memory对象)中的值的对象。每个声明的导入module都必须有一个匹配属性,否则会引发WebAssembly.LinkError。

Instance实例

所有Instance实例都继承于Instance()构造函数的原型对象 - 可以修改它以影响所有Instance实例。

Instance 属性

Instance.prototype.constructor返回创建此对象实例的函数。默认情况下这是WebAssembly.Instance()构造函数。Instance.prototype.exports只读返回一个包含从WebAssembly模块实例导出的所有函数作为其成员的对象,以允许它们被JavaScript访问和使用。

Instance方法

None.

规范

SpecificationStatusComment
Web Assembly JavaScript APIThe definition of 'Instance' in that specification.DraftInitial draft definition.

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic Support5716522No4411
exports5716522No4411
prototype5716522No4411

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support5757(Yes)1522No?11
exports5757(Yes)1522No?11
prototype5757(Yes)1522No?11