每当浏览器升级版本时,它都会成为一个小型的营销活动,而且理应如此。看起来 Firefox 每个月都会发布一次 大约一个月,Chrome 大约 6 周 发布一次,而 Safari 则 每年 发布一次。
正如他们所说,Chrome 80 刚刚发布,我们得到了 一个视频 和 一篇博文。如今,让我感到惊讶的是,这些版本中并没有我们所有开发人员都感兴趣的重大旗舰功能。也许是 巨大的分歧 正在发生,但更广泛地说,不同的前端开发人员(那些关心浏览器的人)从事不同的工作,因此关心不同的东西。
让我尝试通过此版本的特性概述来阐述这一点
- 内容索引是一种访问浏览器已缓存的文件(您专门缓存的文件)的元数据的方法。这似乎是一个好主意,但我从未认真处理过类似的离线内容,因此它并不在我的专业领域内。
- Web Workers 现在可以使用 ES 模块了。这很酷,我甚至都不知道它们以前不能用。
- JavaScript 中的可选链,例如
obj?.name?.first。我非常喜欢。非常有用。这可能是大多数 JavaScript 开发人员都赞赏的功能。但是 Chrome 是第一个推出此功能的,所以如果您喜欢它,最好使用 Babel 进行转换。我们还可以使用??。 - 来源试验就像特性标记,只不过您可以从 网站 选择加入,而不仅仅是在本地浏览器中。这对我来说完全是新事物,但听起来它们在收集和改进新的 API 方面非常有效。
- 周期性后台同步。Jeremy 在他的文章中阐述了这有多么有用,他在文章中称之为 “静默推送”。您还可以安排通知,使其在脱机情况下更具弹性。
- 如果网站是 HTTPS,则 HTTP 内容会尝试自动升级到 HTTPS。好主意。我使用 Cloudflare 的设置来实现这一点,但将其移到浏览器级别也说得通。
- JavaScript 可以 gzip 流。我理解 gzip 是什么,但感觉这超出了我的理解范围。还有很多完全超出我专业领域的内容,例如解码加密媒体等。
- 联系人选择器 API。我非常喜欢它,就像我喜欢 Web Payments API 一样。如果我可以构建一个 UI 来帮助用户更快、更准确地填写表单,那将非常棒。这就是我使用 1Password 的原因。我使用它来填写地址和信用卡表单,就像使用它来填写密码一样频繁。
- SameSite cookie。这让我感到害怕。我知道我们需要更新 CodePen 上的 cookie 以确保它具有此值,但我还没有深入研究,而 80 版本已经发布了。
- 真正的 CSS 内容!
line-break: anywhere;和overflow-wrap: anywhere;我似乎无法理解它们之间的区别。这些内容已经 非常复杂 了。 - 没有与 HTML 相关的内容。可怜的 HTML 从未获得任何东西。
然后是两个真正吸引我眼球的!
- SVG 收藏夹图标。太棒了。我们已经为 CodePen 发布了一个,因为它在 Safari 上看起来很漂亮。尽管 Safari 使用
<link rel="mask-icon" href="...">支持它,而 Chrome 使用<link rel="icon" href="...">支持它,所以我不太确定该怎么做。我想既然 Firefox 使用rel="icon"支持 SVG,那么就为两者都发布 SVG 吧? - 文本片段。太酷了。我没想到会这样。人们至少讨论了十年的时间。这个想法是链接到页面上的内容,而无需使用
name或id来链接到,只需使用文本即可。语法很奇怪
https://site.com/#:~:text=Links to first occurance of this text.
这是 Stefan Judis 的一个视频
文本片段将很快在 Chromium 中可用。然后,您可以使用 `#:~:text=` 来突出显示某些文本。😲
— Stefan Judis (@stefanjudis) 2020年2月5日
🔗 Chrome 状态: https://#/e60xiQoQoT
🔗 规范: https://#/t02TFfGO2X#devsheets
视频替代文本:使用文本片段突出显示维基百科上的文本 pic.twitter.com/W5tUYZk8NY
对我来说尤其值得注意的是:它将您链接到页面的中间,而不是 顶端。我更喜欢这样。
哦,我的天哪。我完全不知道空值合并运算符或可选链。这将极大地简化我的生活。