Baseline 的定义更新

在今年的 Google I/O 大会上,我们推出了基准,旨在明确表示网络平台功能是否可供您使用。这篇博文在社区和 WebDX 社区小组的工作的帮助下,介绍了相关定义的演变过程。

Baseline 的原始定义是,在所有主流浏览器(Chrome、Edge、Firefox 和 Safari)的现行版本和以往版本中均支持相应功能后,这些功能就会纳入 Baseline。

在与社区的讨论中,我们了解到 Web 平台上功能的生命周期有两个值得注意的点:

  • 当该功能变得具有互操作性,并适用于所有主流引擎时。
  • 达到此限值时,大多数网站都可以安全地实施该功能,而不必担心支持服务问题。

第一阶段的定义非常简单,我们知道某项功能何时在所有主流引擎中提供。我们经常在 web.dev 上庆祝这些时刻。

第二阶段的定义就更加困难了。根据网站或应用的受众,在功能变得具有互操作性之后,您可能会希望很快就能开始使用这些功能;或者,您可能需要等待数年,才能让足够多的用户升级到支持这些功能的浏览器版本。

为了对 Baseline 进行监督,WebDX 社区小组(包括来自所有主要浏览器供应商的代表)组建了一个网络功能项目的治理小组。经过整个团队的深入讨论,治理团队重新定义了 Baseline,以反映功能时间表中的两个要点。

  • 最新上架:当某项内容能够在各种主要浏览器中实现互操作时,属于 Baseline 中新上架的内容。
  • 可广泛使用:该功能通常可以安全使用。这条线设为在新的可用时间点之后 30 个月。

我们还扩展了核心浏览器集,以明确包含这些浏览器的移动版。这意味着,只有以下国家/地区推出某项功能时,系统才会将其归类为最新可用功能:

  • Safari(macOS 和 iOS)
  • Firefox(桌面设备和 Android 设备)
  • Chrome(桌面版和 Android 版)
  • Edge(桌面设备)

我们知道,这条广泛提供的这条信息无法对所有用户而言都准确无误。不过,在研究浏览器版本采用情况的相关数据时,我们发现大多数功能只需 30 个月的时间即可供全球大约 95% 的用户使用。您或许更愿意在更早的时间里使用功能,但是在从互操作性起的 30 个月后,您不太可能无法使用该功能。

您或许会介于新近推出和广泛普及之间。至少,新的可用积分是一个很好的信号,表明您可能想要开始学习此功能。这样一来,当该 API 面向更多开发者推出时,您便可以在生产环境中使用它。

Baseline 的后续举措?

为实现在 MDN 和其他属性上显示 Baseline 状态的目标,我们需要在 Web 功能数据集中映射 Web 平台的所有功能。相关工作仍在进行中,预计于 2024 年完成。

MDN 今天也已宣布对 Baseline 有这项变更。您可以在 MDN 博客中阅读有关 Baseline 在 MDN 上的发展博文,并查看在 MDN 页面上发布的新 Baseline 徽章的示例。

我们还打算开始在 web.dev 和 developer.chrome.com 上实现表明基准状态的标志。

了解详情