Title: JavaScript 中文周刊 #241 - 类型系统的博弈:Flow 为什么在 2026 年依然值得关注? | BestBlogs.dev
URL Source: https://www.bestblogs.dev/article/c094990e?amp%3Butm_medium=feed&%3Butm_campaign=resources&%3Bentry=rss_article_item
Published Time: 2026-06-18 17:50:00
Markdown Content: 82
This edition of JavaScript Weekly brings together a deep comparison of Flow and TypeScript, npm v12 security changes, TanStack type performance optimization, htmx author's reflections on engineering challenges in the AI era, along with updates on various tools and libraries. 
Yesterday 2288 words (about 10 min) View Source →
Sign in to highlight text and take notes as you read. Sign in now
原创 印记中文团队 2026-06-18 17:50 浙江
本期看点:Meta 工程师撰文比较 2026 年 Flow 与 TypeScript 的差异;htmx 作者:为什么写代码容易,懂代码却变难了?TanStack 团队分享将 TypeScript 类型检查工作量减少 86% 的实战经验;为什么重回 HTML-first让用户量翻了一倍? Astro 博客搭建进阶指南。
> 本期看点:Meta 工程师撰文比较 2026 年 Flow 与 TypeScript 的差异;htmx 作者:为什么写代码容易,懂代码却变难了?TanStack 团队分享将 TypeScript 类型检查工作量减少 86% 的实战经验;为什么重回 HTML-first,让我们的用户量翻了一倍? Astro 博客搭建进阶指南。
> 编辑:TimLi
🔥 本周热点
Flow for TypeScript Users in 2026—Flow 是 Meta 推出的成熟 JavaScript 类型化方言,多年来其语法已与 TypeScript 高度趋同。本文带你了解二者当前的差异:Flow 默认更为严格,会拒绝一些 TypeScriptstrict模式所允许、易导致崩溃的模式,并自带一些独有特性,比如穷尽的match表达式。George Zahariev (Meta)
!Image 4
npm v12 将默认停止运行安装脚本— 即将发布的 npm v12 默认将不再执行preinstall/install/postinstall脚本,除非你显式允许。你现在就可以使用 npm 11.16.0,它会对 v12 将阻止的内容发出警告。GitHub
🤖AI 时代的工程困境:为什么写代码容易,懂代码却变难了?—htmx 的作者认为,虽然代码正越来越容易产出,但理解仍然代价高昂,「复杂度仍是我们的头号捕食者。」Carson Gross
!Image 6 快讯:
* pnpm 团队推出了 一个新的 GitHub Action,可同时设置pnpm和 JavaScript 运行时(Node、Deno 或 Bun)。
!Image 7 * 🐈Compilecat(仓库)是一款全新的实验性 JavaScript 性能编译器,可执行类似 Closure 的优化。
!Image 8 * 多个重要项目正以 beta/pre-release 阶段推进,包括 SvelteKit 3.0、Vue 3.6、Vite 8.1 和 Astro 7.0。
📖 文章与视频
TanStack 如何将 TypeScript 类型检查工作量减少高达 86%— TanStack Table v9(目前处于 beta)将特性模块化,但灵活背后的泛型类型在 alpha 阶段引入了明显的编辑器卡顿。这篇深度文章展示了团队如何借助tsc诊断信息将类型检查工作量减少 62–86%,对编写类型密集型库的任何人都有借鉴意义。Kevin Van Cott (TanStack)
🛠️2026 年的 React 库与工具— Robin 每年都会更新这份主观的 React 生态必备库清单。Robin Wieruch
!Image 11 通过修改 Hermes 字节码改写 Kindle 主界面— Kindle 的 UI 现在运行在 Hermes 驱动的 JavaScript 栈上。本文介绍如何编辑 Hermes 生成的字节码,从而改变 Kindle UI 的行为。Nicholas Tarta
📈让 numpy-ts 跑得像原生一样快— 一个 TypeScript 版 NumPy 移植 是如何从比原生慢 15 倍一路追平原生的:关键不在于是否使用 WASM,而在于「谁拥有内存」。Nico Dupont
📄用 HTML 优先建站,让我们的用户一夜翻倍—— 告别 React,拥抱 Astro。Alistair Davidson
📄用 Astro 轻松搭建「真正的」博客—— Zell 所说的「真正的」博客,超越了 demo 级别,包含摘要、文章更新日期等。Zell Liew
📄在 Chrome Canary 中用 textStream() 流式输出 HTML Ollie Williams
🛠 代码与工具
!Image 17: 工具配图 eslint-plugin-unicorn v67.0:超过 200 条强力 ESLint 规则— Sindre 维护的精选规则集已大幅扩张,仅过去几周就新增或更新了近 100 条。例如强制 更好的注释、限制嵌套调用深度、优先使用 Temporal 而非 Date,以及 在 URL 中优先使用 HTTPS 而非 HTTP。这些规则会真正考验(并改进)你的代码。Sindre Sorhus et al.
!Image 18 zod-compiler:将 Zod schema 编译为零开销校验器— 一款构建时编译器,可接入 Vite、webpack 等,将已有 schema 重写为经过优化、可 tree-shake 的校验器。号称校验速度提升 2–75 倍,无需改动源码,且完整保留 Zod API。Gajus Kuizinas
📊billboard.js v4.0:基于 D3 的 JavaScript 图表库— 这款已有近九年历史的库现在提供可选的 Canvas 渲染模式(SVG 仍是默认),bundle 更小,在大数据集上性能更佳。配套还有 数百个 demo,涵盖 环形图、漏斗图、重叠柱状图 与 雷达图 等。Jae Sung Park (NAVER)
!Image 20
PolyCSS:面向 DOM 的 CSS 3D 引擎— 完全使用 CSSmatrix3d()变换在 DOM 中渲染带贴图的 3D 多边形网格,无需 WebGL 或<canvas>。兼容原生 JS、React 和 Vue。既有 画廊 供浏览,也有 在线构建器 供玩耍。LayoutitStudio
📢 其他生态
* 🌐 WebKit 团队 展示了 MapKit JS 6(上图),一种将 Apple Maps 集成到你的站点的方式,点此可看示例。不过你需要有一个 Apple Developer 账户的 token。
!Image 23 * 😱 一位开发者收到了 通过 LinkedIn 上的虚假招聘人员发来的恶意 JavaScript「编程测试」,企图给他的机器植入后门。今年我已经多次听到这种攻击途径,请多加小心。
!Image 24 * WASI 0.3(WebAssembly System Interface)已发布,为 WebAssembly Components 带来了原生异步支持。
!Image 25 * performative-ui 是一组有趣且现代的、套路满满的「AI 初创公司」风格 React UI 组件,比如 ASCII 英雄图案 和 节点图背景。
!Image 26 * 一位开发者有一台没有现代驱动的旧 USB 扫描仪,但他 通过基于浏览器的 WASM 模拟器 + WebUSB 让它重新跑起来。他此前还 用类似方法搞定过一台旧打印机。
!Image 27 版本发布:
* Playwright v1.61—— 现在可以注册并测试 passkey,并通过新的 WebStorage API 读写localStorage与sessionStorage。
* ESLint v10.5.0—— 五条核心规则现在高亮更小的代码范围,避免在编辑器中遮蔽其他问题。
* TanStack AI Beta—— 框架与厂商无关的 AI 工具包。
* Tabulator v6.5—— 从任意 HTML 表格、JS 数组或 JSON 数据创建交互式表格。
* v5.2.0—— 用于将自动更新的时间戳格式化为本地化字符串或相对时间的 Web Component。
* Fable v5.2—— 不是那个你不能用的 LLM,而是一个你可以用的 F# 到 JS/TS(现在也支持 Erlang)编译器。更多信息。
* React Native v0.86—— Android 15+ 上支持 edge-to-edge,DevTools 也有改进。
* Biome v2.5—— 快速的代码格式化和 lint 工具链,已突破 500 条 lint 规则。
* get-value v4.1—— 用a.b.c这样的路径从对象中获取嵌套值。
* axios v1.18.0—— 浏览器和 Node 的基于 Promise 的 HTTP 客户端。
* visx v4.0—— Airbnb 为 React 提供的可视化基础组件。
🙋🏻♀️ 关注我们