奇舞推荐
现代 CSS 解决方案:CSS 数学函数之 calc
在 CSS 中,其实存在各种各样的函数。本文,将具体介绍其中的 CSS 数学函数 (Math functions)。
什么?函数类型重载还可以动态生成?
ts 函数重载一共有三种写法:declare function、interface、交叉类型 &。 当重载比较多的时候,直接列出来还是比较麻烦的,这时候可以用类型编程来动态生成函数重载。
React 18 全览
在2021年6月8号,React 公布了 v18 版本的发布计划,并发布了 alpha 版本。经过将近一年的发布前准备,在2022年3月29日,React 18 正式版终于和大家见面了。 React 18 应该是最近几年的一个重磅版本,React 官方对它寄予了厚望。不然也不会将 React 17 作为一个过渡版本,也不会光发布准备工作就做了一年。 在过去一年,我们已经或多或少了解到一些 React 18 的新功能。这篇文章我会通过丰富的示例,向大家系统的介绍 React 18 带来的改变。当然本文融入了很多个人理解,如有不对,烦请指正。
技术实践
40 行代码实现 React 核心 Diff 算法
网上有大量讲解 Diff 算法逻辑的文章。然而,即使作者语言再精练,再图文并茂,相信大部分同学看完用不了多久就忘了。 今天,我们换一种一劳永逸的学习方法——实现 React 的核心 Diff 算法。
如何使用 JS 实现一个 HTML 解析器
浏览器底层有一块非常重要的事情就是 HTML 解析器,HTML 解析器的工作是把 HTML 字符串解析为树,树上的每个节点是一个 Node,很多同学都好奇是怎么实现的,这篇文章就用 JS 来实现一个简单的 HTML 解析器。
Chrome DevTools Inspector 扩展实践
本文从 chrome devtools inspector 扩展为出发点,介绍了 devtools frontend 调试原理及模块加载方式,react native debugger 调试原理,跨域调试方案,最终实现 devtools inspector 的调试扩展。文内涉及各调试工具知识较多,大多做了概括,技术细节也都留了文档链接可以自行获取,希望对做 chrome 调试工具的同学有所启发和帮助。
拓展边界
前端现代包管理器的进化史
发展到现在,npm,yarn 以及 pnpm 后面都陆陆续续迭代了很多的功能和优化,速度上也越发相似,大家都在互相学习,互相进步
前端大概要的知道 AST
在计算机科学中,抽象语法树是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。之所以说语法是“抽象”的,是因为这里的语法并不会表示出真实语法中出现的每个细节。
W3C 发布 WebAssembly 2.0 初版草案
在已完成的 WebAssembly 2.0 提案中,包含的内容有:固定宽度的 SIMD、批量内存操作、引用类型、JavaScript 的 BigInt 对 WebAssembly i64 的支持、对多返回值的支持,以及全局可变的导入/导出。 WebAssembly 还有一些讨论中的提案正在进行,主要围绕着分支提示、尾部调用优化、异常处理、后 MVP 线程功能、宽松 SIMD 和其他暂定建议等。