在线同步协作文档的难点

实现一个多人协作在线文档有哪些技术难点?

主题 : 揭秘实时协作文档    讲师 : 许海浩

chrome.alarms

https://stackoverflow.com/questions/17727734/how-to-use-chrome-alarms-for-google-chrome-extension

2018新的正则表达式特性

JavaScript 一直缺乏像 Python 这样语言的一些更高级的正则表达式功能 —— 直到现在才推出类似的特性。ES2018 增加了四个新特性:

  • 后行断言(lookbehind assertions),为自 1999 年以来一直使用该语言的先行断言( lookahead assertions) 提供了缺失的补充。

  • s(dotAll)标志,它匹配除行终止符之外的任何单个字符。

  • 命名捕获组,通过基于属性的捕获组查找,可以更轻松地使用正则表达式。

  • Unicode 属性转义,可以编写能够识别 Unicode 编码的正则表达式了。

虽然这些新特性中的许多功能多年来都有解决方法和替代库,但它们都没有原生实现的速度快。

WebAssembly是什么

  1. 由Google, Microsoft, Mozilla,Apple等几家大公司合作发起的一个关于面向Web的通用二进制和文本格式的项目

  2. C,C++,Java等原生语言编写的模块运行在浏览器上,弥补Javascript语言原生的一些缺陷

  3. WebAssembly是一种新的字节码格式。它的缩写是”.wasm”,.wasm 为文件名后缀,是一种新的底层安全的二进制语法。

https://segmentfault.com/a/1190000012110615

动画 Web Animations API

大多数现代 Web 应用程序使用动画作为用户体验的重要部分。像 Google 的 Material Design 这样的框架把动画作为其设计语言的重要组成部分,并认为它们对于创造富有表现力和易于理解的用户体验至关重要。鉴于它们的重要性的提高,最近推出了一个更强大的 JavaScript 动画 API,这个就是 Web Animations API(WAAPI)。

正如 CSS-Tricks 所说,WAAPI 提供了比 CSS 动画更好的开发人员体验,你可以轻松地记录和操作 JS 或 CSS 中定义的动画状态。目前浏览器支持主要限于 Chrome 和 Firefox,但有一个官方的 polyfill 可以满足你的需求。

性能一直是 Web 动画的一个问题,Animation Worklet 解决了这个问题。这个新的 API 允许复杂的动画并行运行 —— 这意味着更高的帧速率动画不受主线程卡顿的影响。Animation Worklet 遵循与 Web Animations API 相同的接口,但在 Worklet 执行上下文中。

它将在 Chrome 71(截至撰写本文时的下一个版本)发布,而其他浏览器可能会在明年某个时候发布。如果想今天就试试,可以在 GitHub 上找到官方的 polyfill 和示例仓库。