跳到主要内容

启动 Ignition 解释器

· 阅读需 4 分钟
Ross McIlroy, V8 Ignition 初学者

V8 和其他现代 JavaScript 引擎通过 即时(JIT)编译 将脚本转换为本机机器代码以获得执行速度,而这通常是在执行前立即进行的。代码最初由基础编译器快速生成非优化的机器代码,在运行时进行分析,并根据需要动态使用更高级的优化编译器进行重编译以实现更优性能。在 V8 中,这种脚本执行管道包含各种特殊情况和条件,因而需要复杂的机制在基础编译器和两个优化编译器 Crankshaft 与 TurboFan 之间切换。

在 BlinkOn 6 会议上的 V8

· 阅读需 2 分钟
V8 团队

BlinkOn 是 Blink、V8 和 Chromium 贡献者的半年一次会议。BlinkOn 6 于 6 月 16 日和 6 月 17 日在慕尼黑举行。V8 团队进行了多场关于架构、设计、性能计划及语言实现的演讲。

V8 发布版本 v5.3

· 阅读需 4 分钟
V8 团队

我们每隔大约六周就会创建一个新的 V8 分支,作为我们 发布流程 的一部分。每个版本都从 V8 的 Git master 分支出来,并在 Chrome 分支 Chrome Beta 里程碑之前完成。因此,我们很高兴地宣布我们的最新分支, V8 版本 5.3,会在 Beta 阶段运行,直到它与 Chrome 53 Stable 协调发布。V8 v5.3 充满了各种面向开发者的好功能,我们期待几周后发布的这款版本,先为您预览一些亮点。

V8 发布 v5.2

· 阅读需 2 分钟
V8 团队

大约每六周,我们会基于我们的发布流程创建一个新的 V8 分支。每个版本从 V8 的 Git 主分支直接分支而来,时间点正好在 Chrome 为 Chrome Beta 里程碑分支之前。今天,我们很高兴宣布我们的最新分支,V8 版本 5.2,它将在配合 Chrome 52 稳定版发布之前处于 Beta 状态。V8 5.2 包含了各种面向开发者的功能,因此我们想要提前预览一些亮点内容,以期几周后的发布。

ES2015、ES2016及更高版本

· 阅读需 9 分钟
V8团队,ECMAScript爱好者

V8团队非常重视JavaScript语言的演进,使其成为一个能够表达更多内容且定义完善的语言,从而让编写快速、安全和正确的网络应用变得轻松。2015年6月,ES2015规范由TC39标准委员会正式通过,这是JavaScript语言史上最大的一次更新。新特性包括箭头函数Promise迭代器/生成器代理知名符号以及额外的语法糖。TC39还加快了新规格的发布步伐,并于2016年2月发布了ES2016候选草案,预计在夏季正式通过。虽然由于较短的发布时间周期,ES2016的更新没有ES2015那么全面,但它引入了指数运算符Array.prototype.includes

V8 发布 v5.1

· 阅读需 3 分钟
V8 团队

V8 发布流程 的第一步是在 Chromium 分支出 Chrome Beta 里程碑之前(大约每六周一次)从 Git 主分支创建一个新分支。我们最新的发布分支是 V8 v5.1,它将在 beta 版中保持一段时间,直到与 Chrome 51 稳定版一起发布一个稳定版本。以下是这个 V8 版本中的新开发者功能亮点。

Jank克星第二部分:Orinoco

· 阅读需 6 分钟
Jank克星:Ulan Degenbaev,Michael Lippautz,和Hannes Payer

之前的博客文章中,我们介绍了垃圾回收中断顺畅浏览体验导致的卡顿问题。在本文中,我们介绍了三种优化,这些优化为V8中的新垃圾回收器(代号为_Orinoco_)奠定了基础。Orinoco基于这样一个理念:实现一个大部分并行和并发的垃圾回收器,在没有严格代界限的情况下,可以减少垃圾回收的卡顿和内存消耗,同时提供高吞吐量。我们没有将Orinoco作为单独的垃圾回收器在标志后面实现,而是决定逐步在V8的主代码库中发布Orinoco的功能以便用户立即受益。本篇文章讨论的三个功能是并行压缩、并行记忆集处理和黑色分配。

V8 发布 v5.0

· 阅读需 3 分钟
V8 团队

V8 发布流程 的第一步是在 Chrome Beta 里程碑分支之前从 Git 主分支创建一个新分支(大约每六周一次)。我们最新的发布分支是 V8 v5.0,它将在我们与 Chrome 50 Stable 一起发布稳定版本之前保持测试版状态。以下是这个版本中面向开发者的新功能亮点。

在 V8 中对 WebAssembly 的实验性支持

· 阅读需 3 分钟
Seth Thompson,WebAssembly 专员

关于 WebAssembly 的全面概述以及未来社区协作的路线图,请参阅 Mozilla Hacks 博客上的 A WebAssembly Milestone

自 2015 年 6 月以来,来自 Google、Mozilla、微软、苹果以及 W3C WebAssembly Community Group 的合作伙伴一直在努力 设计规范化 并实现 (1, 2, 3, 4) WebAssembly, 一种新的网络运行时和编译目标。WebAssembly 是一种低级的、可移植的字节码,设计为以紧凑的二进制格式编码,并在一个内存安全的沙盒中以接近原生的速度执行。作为现有技术的演变,WebAssembly 与 Web 平台紧密集成,同时在网络上下载更快且比 asm.js(JavaScript 的低级子集)更快启动。

正则表达式后向断言

· 阅读需 3 分钟
杨国,正则表达式工程师

正则表达式自 ECMA-262 规范第三版发布以来,就已经从 1999 年开始成为 JavaScript 的一部分。在功能和表达能力方面,JavaScript 对正则表达式的实现大致与其他编程语言相似。