本期看点:Hemanth HM 把函数式编程术语图谱化;React 19.3 让 View Transitions 与 Fragment Refs 稳定;Philip Walton 推出补齐新 Web API 的 modern-web-types;Shopify 重写为原生应用;StyleX、async/await 设计空间深度剖析。
编辑:TimLi
🔥 本周热点
函数式编程术语:图谱化诠释 — 柯里化、纯函数、函子、单子……一旦这些 FP 术语让你一头雾水,TC39 代表 Hemanth HM 的这份 热门术语速查表 如今变成了一张可探索的概念地图:清晰展示术语之间的关系,每个词都配以简洁的定义与 JavaScript 示例。Hemanth HM
https://hemanth.github.io/functional-programming-jargon/
Modern Web Types:为较新 Web API 提供 TypeScript 类型 — TypeScript 的 DOM 类型只收录了多个浏览器引擎都已实现的 API,因此像元素级作用域的 startViewTransition、fetchLater 等都会报错。modern-web-types 是一个即插即用的 lib.dom 替代品,补齐了任意单一引擎中已实现、却尚未被纳入官方类型的接口与成员。Philip Walton(Google)
https://philipwalton.com/articles/modern-web-types/
React 19.3 正式发布 — 这是一次重要的次版本更新:View Transitions 与 Fragment Refs 转为稳定、加入 Trusted Types 支持等。我们已在 上周的 React Status 中做过更详细的解读。The React Team
https://react.dev/blog/2026/09/09/react-19-3
快讯:
🔒 攻击者正在 大规模扫描暴露在公网的 Vite 开发服务器,利用的是
server.fs.deny的一个绕过漏洞(已于今年早些时候在 Vite 7.3.2 与 8.0.5 中修复),进而窃取.env文件中的凭据。Vite 默认仅监听 localhost,但还是建议检查一下你的配置。长按识别二维码查看原文 https://www.f5.com/labs/articles/cloud-takeover-mass-scanning-for-exposed-vite-endpoints-cve-2026-39364
Safari 27 已于昨日发布(与 macOS/iOS 27 一同推出),带来了我们上周报道过 的模块加载器重写,至此顶层
await在所有主流浏览器中都能稳定工作。长按识别二维码查看原文 https://developer.apple.com/documentation/safari-release-notes/safari-27-release-notes
TC39 两周后将齐聚东京。议程已发布,其中三个迭代器辅助提案(join、includes 与 chunking)都将冲刺 Stage 4,此外还有更多内容。
长按识别二维码查看原文 https://github.com/tc39/agendas/blob/main/2026/09.md
🔒 从本周四起,OpenJS Foundation 的 CVE 团队将休假至 10 月 6 日,原因是 AI 生成的漏洞报告激增导致团队不堪重负。已被积极利用的漏洞仍将得到响应。
长按识别二维码查看原文 https://openjsf.org/blog/the-openjs-foundation-cna-is-taking-a-coordinated-break
🔒 npm 现在会在成功使用恢复码登录后,对任何账户临时施加 72 小时的"安全保留"。
长按识别二维码查看原文 https://github.blog/changelog/2026-09-09-npm-extends-recovery-code-security-holds-to-all-accounts/
📖 文章与视频
异步 / 等待的设计空间探索 — 同一段简单的 async/await 示例,在 JavaScript、Rust、Python 与 Swift 中会得到不同的结果。先用一道小测验检验一下你的心智模型,再来了解背后设计选择的差异。Gavin Gray
https://cel.cs.brown.edu/blog/design-space-async-await/
原生开发现已成为 Shopify 移动端的未来 — Shopify 正在用 Swift/Kotlin 重写其 React Native 移动应用。核心论点是:编码代理让"写两遍"的成本大幅下降,而原生开发本身的优势依然存在。Mustafa Ali(Shopify)
https://shopify.engineering/back-to-native
深入 StyleX — 一次亲手操练 Meta 的 StyleX 的实践之旅:它会在构建期把 JavaScript 的样式对象转换为简洁的原子化 CSS,并解释了为何它尤其适合编码代理使用。Flavio Copes
https://flaviocopes.com/stylex/
📄 《没人愿意为开源付费,但我们可以逼他们付费》 — 曾执掌 npm 五年之久的 Laurie Voss 认为,registry 仍是资助维护者的一座未开采的金矿。Laurie Voss
https://seldo.com/posts/nobody-pays-for-open-source-we-can-force-them-to/
📄 经验之谈:程序员都不喜欢 reduce — map 与 filter 在代码评审中畅行无阻,但 reduce 却频频招致抱怨。Evan 给出了几种可能的原因。Evan Hahn
https://evanhahn.com/posts/2026-09-13-programmers-dislike-reduce/
🛠 代码与工具
SnapDOM 3.0:把 DOM 元素转换为图像、Canvas 等 — 一个零依赖的 html2canvas 替代品,支持伪元素与 Shadow DOM。v3.0 引入了"增量重捕获"以加速重复截图、自动嵌入网页字体,以及支持 fromString() 直接从原始 HTML 字符串生成图像。Zumerlab
https://snapdom.dev/
Fallow:TypeScript 与 JavaScript 的代码库智能分析 — 一个零配置、极速的 Rust 二进制工具,用于在 JS/TS 项目中查找死代码、重复代码、循环依赖与复杂度热点。它同时被定位为 AI 编码代理循环中的确定性校验工具。GitHub 仓库。Bart Waardenburg
https://docs.fallow.tools/
🎨 category-colors:生成图表中最不"踩雷"的分类配色 — Matt 于 2022 年在 Stripe 担任设计总监期间,发明了 这套为分类图表挑选颜色的算法。如今它已发布为 npm 包,你也可以直接 在 Web 上试用。Matt Ström-Awn
https://mattstromawn.com/writing/the-least-wrong-colors-version-2/
📢 其他生态
🕹️ 今年的 js13kGames 参赛作品已就位,共有 317 款游戏,每个都压缩到 13KB 以内,创下纪录。Frank Force 的竞速游戏 SP13KTRA 与 Roguelike 游戏 Hornbound 是不错的起点,你也可以翻阅所有项目的公开仓库。
长按识别二维码查看原文 https://js13kgames.com/2026/
Chris Coyier 盘点了 2026 年中值得关注的新兴 HTML 特性,比如
<geolocation>、<install>元素、HTML-in-Canvas 以及<select>自定义能力的增强。长按识别二维码查看原文 https://blog.master.dev/new-things-you-should-know-about-html-here-in-mid-2026/
首届 Three.js Conference 上周在巴黎举行,Codrops 带来了 为期两天的现场博客回顾,包括 Mr.doob 的演讲。目前尚未发布录像。
长按识别二维码查看原文 https://threejs.paris/
Tailwind CSS 背后的团队 Tailwind Labs 正式加入 Shopify。Tailwind CSS 将继续维护并保持开源——松了口气!😅
长按识别二维码查看原文 https://tailwindcss.com/blog/tailwind-is-joining-shopify
版本发布:
React DevTools v8.0 —— Chrome Web Store 已上线。Suspense 标签默认开启;Timeline 性能面板已移除(改用浏览器自带的"Performance"面板);检视 DOM 节点时现可直接定位到对应的 React 组件。
Zod v4.6 —— 新增
.validate(),一个跳过错误对象构造的布尔校验方法;在使用编译过的 schema 校验非法输入时,比.safeParse().success快 35 倍。Javet v6.0 —— 在 JVM 中嵌入 Node.js v26 运行时,实现与 Java 的完整互操作。
parse-xml v5.0 —— 这款高速、兼容规范的 XML 解析器 转为仅支持 ESM。
n64js v1.0 —— 纯 JavaScript 编写的任天堂 64 模拟器。
pnpm v12.4 —— 包管理器现已能在同一工作区内统一管理 Rust crate 与 Python 包,而不仅仅是 npm 包。
Playwright v1.63 —— 测试可声明一个具名
lock,让共享同一资源的测试不会并发执行。Node.js v26.8.2 (Current) / v24.21.0 (LTS) —— 两个版本均包含 Undici 的安全更新,修复了多个漏洞。
React Router v8.4 / Vite v8.3 / Moment.js v2.31.0 —— 各类常规更新(其中 Moment.js 为安全版本)。
🙋♀️ 关注我们