BASE
如何修复任意 BUG
Dan 的最新博文,他提出了一个解决 bug 的思路,解决 bug 最主要的是找到出现 bug 的代码,那么如何找到这部分代码呢?
那就是最小化可以复现的代码,你通过一点点移除可能会出现问题的代码,直到以最小可以复现的代码定位,就知道在哪里解决这个问题了。
当然,这个方式有一个非常大的问题,就是很消耗时间精。,我认为只有在非常难排查的时候才这么做。但正如 Dan 所说:
在理论枯竭之后,我不知道还有什么方法比这更有效
为什么 typeof null === "object"
这篇文章从 JS 历史带你了解为什么 JS 会有这样的问题,并且无法解决。
State Of JS 2025 开始了
25 年的 JS 生态非常稳定了,几乎没有新的前端框架,但是元框架的竞争稍微有点激烈。
使用 @ts-expect-error 或 any 替代 @ts-ignore
@ts-ignore会忽略下一行的报错。@ts-expect-error也会忽略下一行的报错,但是如果下一行并没有报错,那么 TS 就会告警你不需要使用这个标识。any也可以用来绕过一些严格检查的场景。但并不是万能的。
React
React Conf
React Conf 于 10 月 7-8 号举办,你可在 Youtube 观看回放
另外,现在 React 已经从 Meta 公司走出来了,现在由 React 基金会管理。详见 React 基金会简介
React 更新了 19.2
<Activity />可以按条件的预渲染内容,来提前加载数据、图片等内容useEffectEvent适用于某个事件以来某个值,但是又不希望值一更新就变更这个事件cacheSignal适用于 RSC 组件,让你知道cache()生命周期何时结束- Performance Tracks:React 添加了一组新的自定义 Tracks(包含了 Scheduler、Components 两部分),可以在 Chrome Performance 中 查看更新性能的信息。
- ...
指令和平台边界
Tanstack 发表了一篇博文,评论目前框架的一种趋势,框架在发明各种指令,比如 use client use server use cache use workflow 等等。React 19.2 Compiler 还推出了 use no memo 的指令,非常离谱。
这些指令不是 JS 的语法,并且没法精确的配置参数,就像是 DX 魔法。
Vercel 2025 年春季开源项目批次
Vercel 的开发者计划,帮助项目更快的交付产品拓展规模,这些列出的项目都是质量很好的开源项目。
Node
Node.js 性能:通过缓冲区优化,处理 14GB 文件速度提高 78%
作者挑战在 Nodejs 中处理 10亿行文本,从 5 分 49 秒缩短到了 1 分 14 秒。从开发最朴实的代码,到一步一步寻找性能瓶颈的线索,非常值得学习的探索精神。