发布于 2026.10.19。这里收集每周最新前端资讯和技术,周一发布。
行业动态
一、Deno 团队去了 Cloudflare,Deno 却要收摊了[1]
上期那位「跟 Deno 绝交、回去用 Node」的 David Bushell,大概早就看出苗头了。Deno 团队加入 Cloudflare,不是为了把 Deno 接着做下去,而是要把 celld 折进 workerd,让 Durable Objects 能自己托管。Deno 运行时还剩最后一年官方修复,Deno Deploy 六个月后关停,JSR 也搬去 Cloudflare 的基础设施。
作者:Ryan Dahl | 来源:deno.com
二、AWS Lambda 现在也能跑普通 Node 服务了[2]
AWS 推出 Lambda Web Functions。Express、Hono、Fastify 这类监听端口的 Node 服务,不用改写成 Lambda handler 就能直接部署上去。计费上 CPU 只算活跃时间,内存单独计。
作者:AWS | 来源:aws.amazon.com
三、Stack Overflow 2026 调查:JavaScript 连坐 12 年第一[3]
📊 30903 人参与。JavaScript 连续第 12 年稳坐「最常用语言」第一,TypeScript 排在第六。
作者:Stack Overflow | 来源:survey.stackoverflow.co
四、Zod 的供应链警报:那个恶意版本根本没发出去[4]
上周 npm 上又有一个传闻,说是 Zod 被投毒了。实际上,九月被推到仓库里的恶意 commit 当天就回滚了,npm 上从没出现过对应的恶意版本。作者 Colin McDonnell 在这条讨论[5]里把前因后果讲了一遍。
作者:Colin McDonnell | 来源:news.ycombinator.com
五、给 Interop 2027 的候选特性排个序:Firefox 的投票又开了[6]
登录 GitHub,就能给 Interop 2027 的候选提案对比、打分。去年收上来约 1900 份榜单,Jake Archibald 说它帮厂商「理清了不少今年该做的事」——今年轮到你了。
作者:Firefox | 来源:interop-rank.fxdx.dev
六、Firefox 158 默认支持 JPEG XL[7]
比 Chrome 晚一步,Firefox 现在默认认 JPEG XL,发图片请求时 Accept 头上会带上 image/jxl。我们前阵子刚推荐过一篇唱反调的文章,说它比起 AVIF 没什么优势——现在两大引擎都到位了,那笔账值得重算一遍。
作者:Mozilla | 来源:developer.mozilla.org
文章
一、Node 的 WebSocket 延迟这次跑到了 Bun 和 Deno 前面[8]
2023 年那次测试里,Bun 转发 WebSocket 消息比 Node 快得多,只不过他当时的 Bun 服务写错了。这次 Daniel Lemire 换了个更硬的基准——用 C 写的中继客户端——结论反过来了:Node 26 的延迟已经逼近 C,把 Bun 和 Deno 都甩在后面。
作者:Daniel Lemire | 来源:lemire.me
二、一套纯 CSS 的图标系统,不碰一行 HTML[9]
用 --icon 自定义属性、@property、样式查询和 mask 拼出来的一套图标:插图标、改样式,都不用动 HTML。Lea 自己的评价是「比你之前用的那套更灵活,也更好维护」。
作者:Lea Verou | 来源:lea.verou.me
三、Sindre Sorhus 的个人站改用 Swift 重写[10]
JS 圈最高产的作者之一,这次把 Astro 扔了,用 Swift 重写自己的站——样式和标记也都在 Swift 里写。好处很实在:站里出现死链、样式名拼错,编译阶段就报错。源码在这[11]。
作者:Sindre Sorhus | 来源:sindresorhus.com
四、递归死了,是 HTML 动的手[12]
Chrome 新的乱序 HTML 流式渲染,也就是声明式局部更新(Declarative Partial Updates),能直接让浏览器把嵌套的评论楼盖出来。嵌套结构一向是前端最烦的部分,这次连递归都省了。目前只有 Chromium 支持,但值得看一眼。
作者:Dave Rupert | 来源:daverupert.com
五、懒加载到底能提前多远?三大浏览器实测一遍[13]
Ben Schwarz 分别测了 Chrome、Firefox、Safari 会提前多远去取懒加载的图片和媒体,也盘清了哪些资源能交给 lazy(Chromium 里连 video、audio 都行),以及 lazy、eager、fetchpriority 各自该用在哪。
作者:Ben Schwarz | 来源:calibreapp.com
六、滚动叙事一直缺的那块拼图:滚动触发动画[14]
讲的是 CSS Animation Triggers 规范,也是 Interop 2027 的候选之一:根据滚动位置触发动画。文中五个 demo,基本把它能干的事都演了一遍。
作者:Brecht De Ruyte | 来源:utilitybend.com
七、我大概是在用 WebP 了[15]
Google 推 WebP 推了 16 年,如今支持率到了 97%(caniuse 数据[16])。作者觉得,当年唱衰 WebP 的那些文章,值得重新读一遍。
作者:Gavin Anderegg | 来源:anderegg.ca
八、iPhone Duo 对前端意味着什么:拿模拟器先摸了一遍[17]
Duo 上周开卖,Video.js 的 Darius Cepulis 提前在模拟器上试了 Device Posture(设备姿态)和 Viewport Segments(视口分段)这两个还在 flag 后面的 API,用 Video.js 组件加 CSS 复刻了 Netflix 的折叠屏播放器 UI——被苹果的全屏限制折腾得够呛。
作者:Darius Cepulis (Video.js) | 来源:videojs.org
九、用 TinyJS 做个小桌面应用[18]
Raymond Camden 快速过了一遍这个新工具:写 JavaScript 应用,打包成十兆以内的桌面程序。工具本身我们几周前推荐过,这次是更短的一段上手记录。
作者:Raymond Camden | 来源:www.raymondcamden.com
发布
一、Bun 1.4.3:自带 bun check,类型检查也归它管[19]
bun check 是 TypeScript 7 检查器的移植版:读你的 tsconfig.json,报出来的错和 tsc 完全一致,Jarred 说快 3 到 6 倍,bun run/test/build 也都接上了。另外空闲的 server 进程不再白烧 CPU,JavaScriptCore 升了一级,顺带带来一批性能提升[20]。
作者:Jarred Sumner | 来源:bun.com
二、TanStack Start 1.0:全栈 React 终于等到它[21]
TanStack 家族里憋了很久的那个全栈框架正式转正。用 React 或 Solid 的,这周值得看一眼。
作者:TanStack | 来源:tanstack.com
三、Tamagui 3:Web 和原生共用一套 React 代码[22]
一套样式系统加 UI 组件库,让 React Web 应用和 React Native 共用同一份界面代码,性能靠编译器在两端都保住。这版加了 Tailwind 风格的 props 和 React Strict DOM 支持。
作者:Nate Wienert | 来源:tamagui.dev
四、H3 v2:按 Web 标准重写,同一份代码跑哪儿都行[23]
Nuxt 服务端引擎 Nitro 就架在它上面,这个极简 HTTP 框架的 v2 正式转正。这次照着标准的 Request、Response 重写,同一份应用能跑在 Node、Bun、Deno、Workers 上,甚至浏览器里。迁移指南[24]也备好了。
作者:Pooya Parsa | 来源:h3.dev
五、OpenCode 2.0:能把 agent 扔到后台干活了[25]
这个跑在 Bun 上的编码 agent 应用,路数更像 Claude Code,而不是 Pi。2.0 的重头戏:后台子 agent(可以并行开一堆活)、让模型自己写脚本调 MCP 工具的 code mode,还有配套的原生 JS 和 Effect 客户端,方便在自己的程序里驱动它。
作者:Anomaly / The OpenCode Team | 来源:anoma.ly
六、Bootstrap 6 Alpha:2021 年以来的第一个大版本[26]
Sass 变量大多换成了 CSS 变量,JS 插件只发 ESM,整体更依赖浏览器原生能力。目前还是 Alpha。
作者:Mark Otto | 来源:blog.getbootstrap.com
七、Marionette 5.0:终于甩掉 Backbone 了[27]
Backbone 时代的老框架,隔了六年才回来:核心里把 Backbone、jQuery 和 Underscore 全摘掉了。官方博客也解释了为什么这么干。
作者:Marionette | 来源:marionettejs.com
八、Express 5.3.0:一个小版本,但建议升[28]
qs、proxy-addr、body-parser 三个依赖都补了,一共修掉五个 CVE。
作者:Express | 来源:github.com
工具
一、Screen Ruler:量尺寸、看 CSS、顺手改一下[29]
常用的 Chromium 扩展:量尺寸、查 CSS、实时改完立刻生效。还带了个 MCP server,能接给编码 agent 用。
作者:Myster Violets | 来源:www.screen-ruler.com
二、webvitals.fyi:29 个性能工具横向打分[30]
挑性能工具没头绪时,可以来这儿看看。29 个工具按能力和角色定位(偏前端还是偏性能工程师)逐个给了有态度的评分。
作者:Phil Gourley | 来源:webvitals.fyi
资源
一、ascii.rest:200 多份会动的 ASCII 艺术[31]
好看的图案和实用的组件都有:加载动画、spinner、图表、形状,复制走就能用。
作者:Shubham Kira | 来源:ascii.rest
库
一、Partytown 1.0:把第三方脚本挪进 Web Worker,beta 了五年[32]
老办法新用:把第三方脚本从主线程挪进 Web Worker 里执行。这个库跟着 Qwik 磨了五年,这周终于出 1.0。
作者:Qwik | 来源:partytown.qwik.dev
二、reseter.css 3.0:塞进 @layer reset 的现代 CSS reset[33]
老牌 CSS reset 的大改版:full 和 mini 两个版本现在都装进 @layer reset 里,覆盖关系变得可预测;全量改用逻辑属性,构建走 Lightning CSS。压缩后约 1KB。
作者:Krish Gupta | 来源:ikrishg.github.io
参考链接:JavaScript Weekly#806[34] · Frontend Focus#762[35]
Deno 团队去了 Cloudflare,Deno 却要收摊了: https://deno.com/blog/cloudflare
[2]AWS Lambda 现在也能跑普通 Node 服务了: https://aws.amazon.com/blogs/aws/announcing-aws-lambda-web-functions-for-fast-consistent-web-app-performance-anywhere/
[3]Stack Overflow 2026 调查:JavaScript 连坐 12 年第一: https://survey.stackoverflow.co/2026
[4]Zod 的供应链警报:那个恶意版本根本没发出去: https://news.ycombinator.com/item?id=50052814
[5]这条讨论: https://news.ycombinator.com/item?id=50057591
[6]给 Interop 2027 的候选特性排个序:Firefox 的投票又开了: https://interop-rank.fxdx.dev/
[7]Firefox 158 默认支持 JPEG XL: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/158
[8]Node 的 WebSocket 延迟这次跑到了 Bun 和 Deno 前面: https://lemire.me/blog/2026/10/10/websocket-servers-in-javascript-node-js-bun-and-deno-in-2026/
[9]一套纯 CSS 的图标系统,不碰一行 HTML: https://lea.verou.me/blog/2026/icons/
[10]Sindre Sorhus 的个人站改用 Swift 重写: https://sindresorhus.com/blog/swift-website
[11]源码在这: https://github.com/sindresorhus/sindresorhus.github.com
[12]递归死了,是 HTML 动的手: https://daverupert.com/2026/10/html-recursion/
[13]懒加载到底能提前多远?三大浏览器实测一遍: https://calibreapp.com/blog/native-lazy-loading
[14]滚动叙事一直缺的那块拼图:滚动触发动画: https://utilitybend.com/blog/scroll-triggered-animation-as-the-missing-piece-for-scrollytelling-on-the-web
[15]我大概是在用 WebP 了: https://anderegg.ca/2026/10/08/i-guess-im-using-webp-now
[16]caniuse 数据: https://caniuse.com/webp
[17]iPhone Duo 对前端意味着什么:拿模拟器先摸了一遍: https://videojs.org/blog/iphone-duo-web-development
[18]用 TinyJS 做个小桌面应用: https://www.raymondcamden.com/2026/10/08/tiny-apps-with-tinyjs
[19]Bun 1.4.3:自带 bun check,类型检查也归它管: https://bun.com/blog/bun-v1.4.3
[20]顺带带来一批性能提升: https://bun.com/blog/bun-v1.4.3#javascriptcore-upgrade
[21]TanStack Start 1.0:全栈 React 终于等到它: https://tanstack.com/blog/tanstack-start-1-0
[22]Tamagui 3:Web 和原生共用一套 React 代码: https://tamagui.dev/blog/version-three
[23]H3 v2:按 Web 标准重写,同一份代码跑哪儿都行: https://h3.dev/blog/v2
[24]迁移指南: https://h3.dev/migration
[25]OpenCode 2.0:能把 agent 扔到后台干活了: https://anoma.ly/notes/opencode-2-0/
[26]Bootstrap 6 Alpha:2021 年以来的第一个大版本: https://blog.getbootstrap.com/2026/10/08/bootstrap-6-alpha/
[27]Marionette 5.0:终于甩掉 Backbone 了: https://marionettejs.com/news/introducing-marionette-5/
[28]Express 5.3.0:一个小版本,但建议升: https://github.com/expressjs/express/releases/tag/v5.3.0
[29]Screen Ruler:量尺寸、看 CSS、顺手改一下: https://www.screen-ruler.com/
[30]webvitals.fyi:29 个性能工具横向打分: https://webvitals.fyi/
[31]ascii.rest:200 多份会动的 ASCII 艺术: https://ascii.rest/
[32]Partytown 1.0:把第三方脚本挪进 Web Worker,beta 了五年: https://partytown.qwik.dev/
[33]reseter.css 3.0:塞进 @layer reset 的现代 CSS reset: https://ikrishg.github.io/reseter.css/
[34]JavaScript Weekly#806: https://javascriptweekly.com/issues/806
[35]Frontend Focus#762: https://frontendfoc.us/issues/762