NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

浏览器厂商开始默认支持 WebAssembly 格式

  • 2017-03-13
  • 本文字数:931 字

    阅读完需:约 3 分钟

各浏览器厂商在 WebAssembly 相关的工作上已经达成了一种“共识”,这使得各浏览器开始默认支持 WebAssembly 格式。

早在 2016 年 11 月, WebAssembly 就已经进入“浏览器预览”(Browser Preview)阶段。在此阶段,主流浏览器都提供了一个具有 WebAssembly 开关标识的测试版本浏览器。随后的数月时间,各浏览器厂商需要在 JavaScript API 二进制格式上做改进,并就此取得一致意见。近期发布的公告对 WebAssembly 做了界定:

如果没有实现经验和明确用途,那么无法对 WebAssembly API 和二进制格式的设计做进一步的改进。从这个意义上讲,最初的设计工作已经完成。(各浏览器厂商)就此已达成了共识。

这一共识标志着“浏览器预览”阶段的结束,意味着各个浏览器可以默认打开对 WebAssembly 格式的支持。由此往后,将来的特性设计会确保向后兼容。

虽然这一最初实现是一个重要的里程碑,但是并不会立刻被开发人员大范围地采用。尽管未来潜力无限,WebAssembly 当前的语言支持仅限于 C 和 C++,以及对 Rust 的初期支持。WebAssembly 也没有提供垃圾回收机制,因此 C#和 Java 这样的语言并不能正常运行,除非将它们自身的运行时作为二进制的组成部分。但是以后添加垃圾回收已在讨论中。

此外,WebAssembly 当前缺少与DOM 交互等重要特性。Mozilla 工程师 Lin Clark 写道,虽然“期待了很多的特性”,但是这些特性需要“有一个制定规范的过程”。WebAssembly 社区组已经提供了一个供 W3C 工作组讨论的未来特性列表,但是这些特性何时可用尚未有时间表。

Clark 在一系列的帖子说明了 WebAssembly 会改进性能的原因所在,并指出引入 WebAssembly 将会是一个“转折点”,可导致无法预料的性能改进,并提供迎接新挑战的能力。

今后几年,各浏览器厂商会在改进 JIT 编译器性能的同时,继续改进 JavaScrip 和 WebAssembly 间的交互。

现在已可用的 Firefox 52 支持 WebAssembly 格式。定于 2017 年 3 月 14 日发布的 Chrome 57 也将默认启用 WebAssembly 格式。

查看英文原文: Browser Vendors Start Shipping WebAssembly by Default


感谢张卫滨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-03-13 19:002580
用户头像

发布了 227 篇内容, 共 71.4 次阅读, 收获喜欢 27 次。

关注

评论

发布
暂无评论
发现更多内容

Ubuntu16(ROS_Kinetic)海康威视网络摄像机(单目)内参标定

Studying_swz

ubuntu 11月月更

极客时间运维进阶训练营第四周作业

忙着长大#

极客时间

使用keytool生成Tomcat证书

源字节1号

软件开发 前端开发 后端开发 小程序开发

计算机网络:广域网的基本概念

timerring

计算机网络 11月月更 广域网

部署PKI 和证书服务

我叫于豆豆吖.

11月月更

DNS服务器

我叫于豆豆吖.

11月月更

GoFrame V2真香,我是Get到了高内聚低耦合的点,你呢?

王中阳Go

Go golang 高效工作 学习方法 11月月更

WX微信小程序对于响应的数据绑定和模块化生命周期的实战心得

恒山其若陋兮

前端开发 11月月更

【Logback+Spring-Aop】实现全面生态化的全链路日志追踪系统服务插件「SpringAOP 整合篇」

洛神灬殇

log4j logback 链路追踪组件 日志追踪

Ajax学习笔记

lxmoe

前端 学习笔记 11月月更

python中封装和继承

乔乔

11月月更

2022-11-19:第二高的薪水。表结构和数据的sql语句如下,输出200,因为200是第二大的。请问sql语句如何写? DROP TABLE IF EXISTS `employee`; CREAT

福大大架构师每日一题

MySQL 数据库 福大大

Ajax学习笔记(二)

lxmoe

前端 学习笔记 11月月更

【LeetCode】统计一致字符串的数目Java题解

Albert

算法 LeetCode 11月月更

【C语言】long 关键字

謓泽

11月月更

管理与系统思维

俞凡

管理 系统思维

[力扣] 剑指 Offer 第四天 - 在排序数组中查找数字

陈明勇

Go 数据结构与算法 力扣 11月月更

基于 jenkins 视图对 jenkins job 进行分类

忙着长大#

jenkins

纯原生渲染模式下的uni-App框架通信实战

恒山其若陋兮

前端 11月月更

数据预处理和特征工程-特征选择-相关性过滤-互信息法 & F检验

烧灯续昼2002

人工智能 机器学习 算法 特征工程 11月月更

uni-app实战之单击菜单发布->H5的Promise 化在工程项目的实战演练项目心得

恒山其若陋兮

前端 11月月更

代码的衡量标准

Lemoon Can

写好代码 好代码的衡量标准

部署 jenkins master 及多 slave 环境

忙着长大#

jenkins

【愚公系列】2022年11月 微信小程序-sitemap站内搜索

愚公搬代码

11月月更

算法题学习---删除有序链表中重复的元素-I

桑榆

算法题 11月月更

部署 Jenkins 服务器并安装 GitLab 插件、实现代码免秘钥代码 clone

忙着长大#

jenkins

AngularJS进阶(一)深入理解ANGULARUI路由_UI-ROUTER

No Silver Bullet

angular.js 路由 11月月更 ANGULARUI

TCP/IP-ARP网络攻击与欺骗

我叫于豆豆吖.

11月月更

Mimir 速体验(Part 6): 规则评估和告警管理

Grafana 爱好者

可观测性 #Grafana 11月月更 Mimr

网站与应用

我叫于豆豆吖.

11月月更

kubernetes部署metrics-server

程序员欣宸

Kubernetes k8s 11月月更

浏览器厂商开始默认支持WebAssembly格式_JavaScript_David Iffland_InfoQ精选文章