v9.6
发布信息
发布时间:2021.10.13
Chrome 同步版本:Chrome 96
链接:V8 release v9.6
WebAssembly 新特性
1. Reference Types 提案
在 v9.6 中发布的 Reference Types 提案允许在 WebAssembly 模块中使用来自 JavaScript 的外部引用。Externref
(以前称为 anyref
)数据类型提供了保存对 JavaScript 对象的引用的安全方法,并且与 v8 的垃圾收集器完全集成。
已经支持的引用类型的工具链是 AssemblyScript 和 Rust 的 wasm-bindgen。
v9.5
发布信息
发布时间:2021.09.21
Chrome 同步版本:Chrome 95
链接:V8 release v9.5
JavaScript 新特性
1. Intl.DisplayNames v2版
在 v8.1 中发布了 Intl.DisplayNames
API,支持 language
, region
, script
, 和 currency
类型(查看 API 用法)。现在 v9.5 添加了两个新的支持类型: calendar
和 dateTimeField
。它们返回不同语言的日历类型和日期时间字段的显示名称:
const frDateTimeFieldNames = new Intl.DisplayNames(['fr'], { type: 'dateTimeField' });
frDateTimeFieldNames.of('month'); // "mois" 法文的月份名称
还增加了对 language
类型的支持,增加了一个新的 languageDisplay
选项,可以是 standard
或 dialgue
(默认值) :
const jaDialectLanguageNames = new Intl.DisplayNames(['zh'], { type: 'language' });
const jaStandardLanguageNames = new Intl.DisplayNames(['zh'], { type: 'language' , languageDisplay: 'standard'});
zhDialectLanguageNames.of('en-US') // "美国英语"
zhDialectLanguageNames.of('en-AU') // "澳大利亚英语"
zhDialectLanguageNames.of('en-GB') // "英国英语"
zhStandardLanguageNames.of('en-US') // "英语(美国)"
zhStandardLanguageNames.of('en-AU') // "英语(澳大利亚)"
zhStandardLanguageNames.of('en-GB') // "英语(英国)"
2. 扩展了 timeZoneName 选项
v9.5中的 Intl.DateTimeFormat
API 现在支持 timeZoneName
选项的四个新值:
shortGeneric
:以简短的非位置格式输出时区的名称,例如“ PT ”、“ ET ”等,但不会显示该时区是否属于夏时制。longGeneric
:以正常的非位置格式输出时区名称,如“ Pacific Time”、“ Mountain Time”,但不会显示该时区是否属于夏时制。shortOffset
:以简短的本地化格林尼治标准时间 GMT 格式输出时区的名称,如“ GMT-8”。longOffset
:以简短的本地化格林尼治标准时间 GMT 格式输出时区的名称,如“ GMT-0800”。WebAssembly新特性
1. 异常处理
V8现在支持 WebAssembly 异常处理(Wasm EH)提案,使用兼容工具链 (例如 Emscripten) 编译的模块可以在 v8 中执行。这个方案相比以前 JavaScript 的解决方案开销较低。