<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss.xsl" type="text/xsl"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>新动态 | 折腾啥</title><description>Power Users/Automators 折腾/讨论/分享各种开源工具/脚本/自动化工作流👥 @zhetengsha_group📌 合集 https://t.me/zhetengsha/2🎁 恰饭 https://t.me/zhetengsha/957📢 广告投放 @xream @xream_botBuy ads: https://telega.io/c/zhetengshafeedId:55438372655431680+userId:62307599601855488</description><link>http://telegram.zhetengsha.eu.org</link><item><title>#前端 #新动态PocketJS：在 32MB 内存 PSP 上跑 Modern Web 的极致跨平台 UI 框架：作者分享了如何利用 QuickJS、SolidJS/Vue Vapor 和 Claude 辅助，将现代 Web 框架塞进老掌机并跑满 60 帧的硬核经历</title><link>http://telegram.zhetengsha.eu.org/posts/6317</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/6317</guid><pubDate>Tue, 07 Jul 2026 01:59:58 GMT</pubDate><content:encoded>&lt;div class=&quot;tgme_widget_message_forwarded_from accent_color&quot;&gt;Forwarded from &lt;a class=&quot;tgme_widget_message_forwarded_from_name&quot; href=&quot;https://t.me/cosine_front_end/3847&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span&gt;cosine - 前端人の日常频道&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF&quot; title=&quot;#前端&quot;&gt;#前端&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%96%B0%E5%8A%A8%E6%80%81&quot; title=&quot;#新动态&quot;&gt;#新动态&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://x.com/ewind_dev/status/2073954581017698454&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;PocketJS：在 32MB 内存 PSP 上跑 Modern Web 的极致跨平台 UI 框架&quot;&gt;PocketJS：在 32MB 内存 PSP 上跑 Modern Web 的极致跨平台 UI 框架&lt;/a&gt;：作者分享了如何利用 QuickJS、SolidJS/Vue Vapor 和 Claude 辅助，将现代 Web 框架塞进老掌机并跑满 60 帧的硬核经历。&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;tg-expandable&quot;&gt;
      &lt;input type=&quot;checkbox&quot; id=&quot;expand-1-0&quot; class=&quot;tg-expandable__checkbox&quot; aria-label=&quot;Toggle hidden content&quot; aria-controls=&quot;expand-1-0-content&quot; /&gt;
      &lt;div id=&quot;expand-1-0-content&quot; class=&quot;tg-expandable__content&quot;&gt;AI 摘要：&lt;br /&gt;• &lt;b&gt;极致的硬件压榨&lt;/b&gt;：PocketJS 将 QuickJS 移植到仅有 32MB 内存的索尼 PSP 上，结合 SolidJS / Vue Vapor 和编译期 Tailwind 样式引擎，在仅占 8MB 内存的情况下实现了 60fps 流畅动画。&lt;br /&gt;• &lt;b&gt;Claude 拯救陈年老坑&lt;/b&gt;：该项目起源于作者 5 年前因初始化崩溃而搁置的 PSP-JS，这次在 Claude 协助下修掉了最后 3 个底层 Bug 成功点亮屏幕，作者感叹当年离成功只差一步。&lt;br /&gt;• &lt;b&gt;React 惨遭淘汰&lt;/b&gt;：在 PSP 极其受限的内存下，原生 React 连首屏 &lt;code&gt;JS_Eval&lt;/code&gt; 都跑不通直接出局；而 SolidJS 和 Vue Vapor 表现惊艳，能完美卡进 16ms 的帧预算，成为 PocketJS 的主力支持框架。&lt;/div&gt;
      &lt;label for=&quot;expand-1-0&quot; class=&quot;tg-expandable__toggle&quot;&gt;&lt;span class=&quot;sr-only&quot;&gt;Toggle hidden content&lt;/span&gt;&lt;/label&gt;
    &lt;/div&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://fixupx.com/ewind_dev/status/2073954581017698454&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;非常激动地和大家分享，在 Fable 加持下，我终于做出了多年来设想中最极致的跨平台 UI 框架，这就是 PocketJS！将 QuickJS 移植至内存仅 32MB 的索尼 PSP，结合标准版 SolidJS 和 Vue Vapor，配合编译期 tailwind 样式引擎，实现了 8MB 内存下 60fps 的流畅动画！来拥抱裸金属 Modern Web 吧！引用 PocketJS (@pocket_js) Introducing PocketJS 🕹️import { createSignal…&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;&lt;i class=&quot;emoji&quot; style=&quot;background-image:url(&apos;//telegram.org/img/emoji/40/F09FA7B5.png&apos;)&quot;&gt;&lt;b&gt;🧵&lt;/b&gt;&lt;/i&gt; 讨论串 • FixupX&lt;/div&gt;
  &lt;div class=&quot;link_preview_video_player js-message_video_player&quot;&gt;
  &lt;i class=&quot;link_preview_video_thumb&quot; style=&quot;background-image:url(&apos;https://cdn4.telesco.pe/file/FcGxSO3iMn_bh94xcYLG3QBcbHySvRgQOm7BKWy9PkPt1bF7Io2k1wV0oKhY123vkb0-wzWdmTk1X8L1JpIe5PgPDl1v4HkeA4YQ396MI9iujeFM0h4JQwFQBBIMXwNo4OwB8qj7Hjix5fAoOabcriTV2b6ZLlgWtSh9DvLalfTRoHE-0Y8Pl1QzG-MEHadsJDRTszMcI-4uJXlKEnAAQ0pnVsG0fDywJHXu337T_3lUep7nqcxC0d4m1UU-vrwGs9lqSneanNS1KVhBH7ZlEolKrsKrqfXmcX-1Y379qDjqayetJegV1YIATjV7rit_FvYqtg3X4G-oz54BXb9RVA&apos;)&quot;&gt;&lt;/i&gt;
  &lt;div class=&quot;link_preview_video_wrap&quot; style=&quot;padding-top:53.4375%&quot;&gt;
    &lt;video class=&quot;link_preview_video js-message_video&quot; src=&quot;https://cdn4.telesco.pe/file/4d362099fa.mp4?token=pkyQd9BC6TJM7cr3l0bKmLQRhBmZv4K-oOKRuwvd3D6AGXF3RK26P4okuV2uQWpErlsT8sUDvvIAYUUb62SbFAIVmDWYlf0bL8gyQNJGGP3v8I50Z5iD2pEenotBWQk7x5YY_Noy_Bjg1wD9mkYROArXZKFufvqkwfqOFfT_FfOwURBRVj6AsyTnAcB06VL6xv0G-bfGcjOc6RkU5NAODGjFgcWjjtChYqkhAyQY2w3WM_0MSX8wSqlEGS7o__En-y9fVNU-okYsozyz_f0lqQT4gAbmVJL0N8Sb5iwR_p-7GldN0g32VGWaBRNR4A7v8OPo6d1f-F1anxgqGqpvPg&quot; width=&quot;100%&quot; height=&quot;100%&quot; muted autoplay loop playsinline&gt;&lt;/video&gt;
  &lt;/div&gt;
  
&lt;/div&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;Yifeng &quot;Evan&quot; Wang (@ewind_dev)&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;非常激动地和大家分享，在 Fable 加持下，我终于做出了多年来设想中最极致的跨平台 UI 框架，这就是 PocketJS！&lt;br /&gt;&lt;br /&gt;将 QuickJS 移植至内存仅 32MB 的索尼 PSP，结合标准版 SolidJS 和 Vue Vapor，配合编译期 tailwind 样式引擎，实现了 8MB 内存下 60fps 的流畅动画！&lt;br /&gt;&lt;br /&gt;来拥抱裸金属 Modern Web 吧！&lt;br /&gt;&lt;br /&gt;引用 PocketJS (@pocket_js) &lt;br /&gt;&lt;br /&gt;Introducing PocketJS &lt;i class=&quot;emoji&quot; style=&quot;background-image:url(&apos;//telegram.org/img/emoji/40/F09F95B9.png&apos;)&quot;&gt;&lt;b&gt;🕹️&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;import { createSignal…&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>#优质博文 #JavaScript #前端 #新特性 #浏览器好东西</title><link>http://telegram.zhetengsha.eu.org/posts/4045</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/4045</guid><pubDate>Wed, 29 Oct 2025 01:03:19 GMT</pubDate><content:encoded>&lt;div class=&quot;tgme_widget_message_forwarded_from accent_color&quot;&gt;Forwarded from &lt;a class=&quot;tgme_widget_message_forwarded_from_name&quot; href=&quot;https://t.me/cosine_front_end/2981&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span&gt;cosine - 前端人の日常频道&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href=&quot;/search/result?q=%23%E4%BC%98%E8%B4%A8%E5%8D%9A%E6%96%87&quot; title=&quot;#优质博文&quot;&gt;#优质博文&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23JavaScript&quot; title=&quot;#JavaScript&quot;&gt;#JavaScript&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF&quot; title=&quot;#前端&quot;&gt;#前端&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%96%B0%E7%89%B9%E6%80%A7&quot; title=&quot;#新特性&quot;&gt;#新特性&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8&quot; title=&quot;#浏览器&quot;&gt;#浏览器&lt;/a&gt;&lt;br /&gt;好东西。&lt;br /&gt;&lt;a href=&quot;https://web.dev/blog/baseline-urlpattern&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;URLPattern is now Baseline Newly available&quot;&gt;URLPattern is now Baseline Newly available&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;tg-expandable&quot;&gt;
      &lt;input type=&quot;checkbox&quot; id=&quot;expand-0-0&quot; class=&quot;tg-expandable__checkbox&quot; aria-label=&quot;Toggle hidden content&quot; aria-controls=&quot;expand-0-0-content&quot; /&gt;
      &lt;div id=&quot;expand-0-0-content&quot; class=&quot;tg-expandable__content&quot;&gt;AI 摘要：介绍了已进入 Baseline 的新浏览器功能 &lt;b&gt;URLPattern API&lt;/b&gt;，它为 URL 匹配和路由提供了标准、简洁且高性能的原生解决方案。过去开发者需使用复杂的正则表达式或第三方库来解析和提取 URL 参数，而 URLPattern 使得这些操作更清晰、可维护且无需额外依赖。&lt;/div&gt;
      &lt;label for=&quot;expand-0-0&quot; class=&quot;tg-expandable__toggle&quot;&gt;&lt;span class=&quot;sr-only&quot;&gt;Toggle hidden content&lt;/span&gt;&lt;/label&gt;
    &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;[以下是方便搜索索引的大纲(AI 生成)，请读原文]&lt;br /&gt;&lt;div class=&quot;tg-expandable&quot;&gt;
      &lt;input type=&quot;checkbox&quot; id=&quot;expand-0-1&quot; class=&quot;tg-expandable__checkbox&quot; aria-label=&quot;Toggle hidden content&quot; aria-controls=&quot;expand-0-1-content&quot; /&gt;
      &lt;div id=&quot;expand-0-1-content&quot; class=&quot;tg-expandable__content&quot;&gt;1.  URLPattern 基础与核心概念&lt;br /&gt;•   介绍 URLPattern API 的推出背景：取代传统正则匹配与第三方路由库。&lt;br /&gt;•   提供新 URLPattern 接口，可通过 .test() 与 .exec() 操作直接匹配并提取参数。&lt;br /&gt;&lt;br /&gt;2.  基本 URL 模式匹配&lt;br /&gt;•   对比旧方法（URL + 正则）与新 API 的简化写法。&lt;br /&gt;•   展示匹配 /users/:id 的例子，体现代码可读性和简洁性。&lt;br /&gt;&lt;br /&gt;3.  提取动态参数（Dynamic Parameters）&lt;br /&gt;•   传统方法依赖匿名的正则捕获组，易出错。&lt;br /&gt;•   URLPattern 支持命名参数，可通过结构化对象获取（如 result.pathname.groups）。&lt;br /&gt;•   示例：提取书籍分类 category 与 id。&lt;br /&gt;&lt;br /&gt;4.  复合匹配（Compose Multipart Matches）&lt;br /&gt;•   传统方式需多处判断主机名与路径。&lt;br /&gt;•   URLPattern 原生支持同时匹配多个部分，例如 hostname + pathname。&lt;br /&gt;•   示例：匹配 &lt;i&gt;.cdn.com 下的 /images/&lt;/i&gt; 文件。&lt;br /&gt;&lt;br /&gt;5.  减少项目依赖（Project Dependencies）&lt;br /&gt;•   URLPattern 是内置能力，无需加载第三方库，减少 bundle 体积与维护成本。&lt;br /&gt;•   使用浏览器原生实现，跨引擎一致且性能更优。&lt;br /&gt;&lt;br /&gt;6.  深度用法详解（Detailed Usage）&lt;br /&gt;•   多种典型场景：&lt;br /&gt;    •   &lt;b&gt;路径匹配与参数提取&lt;/b&gt;：示例 /products/:category/:id 展示 .test() 与 .exec() 双用法。&lt;br /&gt;    •   &lt;b&gt;匹配子域名与版本号&lt;/b&gt;：支持在 hostname 层定义变量如 :subdomain.myapp.com，适用于多子域架构。&lt;br /&gt;    •   &lt;b&gt;通配符与正则表达式结合&lt;/b&gt;：通过 * 和嵌入式正则增强匹配灵活度，如 /users/:userId(d+)/assets/*.(jpg|png|gif)。&lt;br /&gt;&lt;br /&gt;7.  实战示例：Service Worker 路由&lt;br /&gt;•   利用 URLPattern 拦截 fetch 事件，根据路径实行不同缓存策略。&lt;br /&gt;•   示例：&lt;br /&gt;    •   /images/* 采用缓存优先；&lt;br /&gt;    •   /api/* 使用网络优先。&lt;br /&gt;•   显示该 API 在渐进式 Web 应用（PWA）中的现实意义。&lt;br /&gt;&lt;br /&gt;8.  结语与扩展阅读&lt;br /&gt;•   URLPattern 提升代码可维护性，简化路由逻辑。&lt;br /&gt;•   推荐进一步查阅 &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/API/URLPattern&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;MDN Web Docs&quot;&gt;MDN Web Docs&lt;/a&gt; 了解完整参考。&lt;/div&gt;
      &lt;label for=&quot;expand-0-1&quot; class=&quot;tg-expandable__toggle&quot;&gt;&lt;span class=&quot;sr-only&quot;&gt;Toggle hidden content&lt;/span&gt;&lt;/label&gt;
    &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;author Jay Rungta&lt;/i&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://web.dev/blog/baseline-urlpattern&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;URLPattern became Baseline Newly available as of September 15, 2025.&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;web.dev&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;URLPattern is now Baseline Newly available  |  Blog  |  web.dev&quot; src=&quot;/static/https://cdn4.telesco.pe/file/sOSXQ2X8PLCYqwa9WYmFavGcYl21dDamMP3ODVVJFNYk3kkJQlLbuaAFndAbUCkTzhUIjpjhJJ907iwACu-XtSGUb_O8ES_st7_qVhg7-RD4LvLDwXieoDCVgPiSw8csMqnfPN8ALphoQoC2IRdu8nYrPJmOr7DPDXSnuvF0Nn1wlHH8KGKhKs71fo_OnwMz68NXNN0NGO3x36V0O7hETl67NDGnP3Q3Ey0tgCQUu4Ia6a80ORhebUCZcZVmsg30__SB9qF1ocGEqH2jBrckGgkfOJhsiohoswZkVJQcz8pLoZeRB0gWNqZlrnHFhNxeZddbF3fpD1jINtno9aBb4A.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;URLPattern is now Baseline Newly available  |  Blog  |  web.dev&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;URLPattern became Baseline Newly available as of September 15, 2025.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item></channel></rss>