news 2026/4/23 13:29:22

<span class=“js_title_inner“>jQuery 4.0 突发!沉寂十年,这位“前端祖师爷”终于跟 IE 说了再见</span>

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
<span class=“js_title_inner“>jQuery 4.0 突发!沉寂十年,这位“前端祖师爷”终于跟 IE 说了再见</span>

2026 年 1 月 17 日,在距离初代版本发布整整 20 年后,jQuery 团队正式发布了jQuery 4.0.0

这是一次跨越十年的大版本更新。对于许多新生代前端开发者来说,$符号可能只是教科书里的历史遗迹;但对于经历过“浏览器兼容性地狱”的老兵而言,这更像是一场迟来的告别仪式。

没有发布会,没有铺天盖地的营销,只有博客上一篇朴实的更新日志。但在 Hacker News 上,这条消息迅速冲上热榜,引发了数百条关于技术变迁、架构复杂性与“简单时代”的怀旧讨论。

在这个 React Server Components 和 AI 编程助手满天飞的 2026 年,jQuery 4.0 的发布意味着什么?它更新了什么?我们又是否还需要它?

jQuery 4.0 的核心主题非常明确:清理历史包袱,拥抱现代标准。

团队坦言,许多破坏性变更是他们“多年来一直想做,但无法在补丁或小版本中完成的”。

1. 终于,告别了旧版 IE

这是 4.0 最令人瞩目的变化。jQuery 4.0 正式放弃了对IE 10 及更低版本的支持。

  • IE 11 呢?依然支持,但在计划中的 jQuery 5.0 将会被移除。

  • 其他被移除的浏览器:旧版 Edge (非 Chromium 内核)、iOS 11 以下版本、Firefox 65 以下版本。

这意味着 jQuery 终于可以删除大量针对古早浏览器的“怪异模式”兼容代码。对于现在的开发者来说,这不仅意味着包体积的减小(gzip 后减少了约 3KB),更意味着代码逻辑的纯粹化。

2. 源码全面迁移至 ES Modules

这在 2026 年听起来可能有些不可思议,但在 4.0 之前,jQuery 源码一直采用 AMD 规范,依赖 RequireJS 进行构建。

在 4.0 中,源码终于完全迁移到了ES Modules,并改用 Rollup 进行打包。这意味着:

  • jQuery 现在可以更好地配合现代构建工具(Vite, Webpack 等)。

  • 原生支持<script type="module">加载。

3. 安全升级:支持 Trusted Types

随着 Web 安全标准的提升,CSP(内容安全策略)变得越来越严格。jQuery 4.0 增加了对Trusted Types的支持。

这意味着当开发者使用 jQuery 操作 DOM(如.html())时,库内部会确保 HTML 字符串经过了受信任的策略处理,从而避免违反require-trusted-types-for指令。这是一个非常“现代化”的改进,表明 jQuery 依然在关注企业级应用的安全需求。

4. 瘦身:移除废弃 API 与内部方法

jQuery 曾是 JavaScript 标准库贫瘠时代的“补丁”。但随着 ES6+ 的普及,原生 JS 已经足够强大。jQuery 4.0 顺势移除了大量已废弃或冗余的 API:

  • 移除:jQuery.isArray,jQuery.trim,jQuery.parseJSON等。

    • 替代方案:直接使用原生Array.isArray(),String.prototype.trim(),JSON.parse()

  • 移除:push,sort,splice等数组方法不再挂载到 jQuery 原型链上。

  • Slim 版本更小:移除了 Deferreds 和 Callbacks 模块(gzip 后仅 20KB 左右),鼓励开发者使用原生的 Promise。


在 Hacker News 的讨论区,关于 jQuery 4.0 的讨论并没有变成单纯的“考古现场”,而是演变成了一场关于“复杂度 vs 实用主义”的深刻辩论。

观点一:它是“意大利面条代码”的替罪羊

许多人将早期的烂代码归咎于 jQuery,这并不公平。jQuery 本身设计精巧,早在 Shadow DOM 出现之前就提供了类似的封装思路。导致项目难以维护的,往往是开发者自身缺乏架构约束,而非工具本身的错。

观点二:现代开发的复杂性反思

也有用户提出了经典质疑:“15年前我用 jQuery 做的事,现在原生 JS 几行就能搞定,为什么还要用它?”

但随即有大量开发者反驳:

  • API 的优雅性:$('.el').hide()依然比document.querySelectorAll('.el').forEach(el => el.style.display = 'none')要简洁、直观得多。

  • 心智负担:在 React/Vue 中,你需要考虑状态管理、生命周期、构建步骤;而在 jQuery 中,你只需要“选中它,改变它”。对于简单的交互页面,jQuery 依然是效率王者。

  • 生态惯性:WordPress 生态、大量企业内部遗留系统、外包项目,依然运行在 jQuery 之上。

观点三:jQuery + HTMX = 新的极简主义?

一个有趣的趋势是,随着HTMX等库的兴起,开发者开始回归“服务端渲染 HTML + 轻量级客户端交互”的模式。

在这种模式下,不需要庞大的 React 全家桶,只需要一个轻便的工具来处理 DOM 交互。瘦身后的 jQuery 4.0,或者是类似的轻量级库(如 Alpine.js),反而重新找到了生态位。


jQuery 4.0 不是为了挑战 React 或 Vue 的地位而生的。

它更像是一次体面的“大扫除”。它承认了原生 JavaScript 的胜利,主动退出了那些它曾经通过 Polyfill 苦苦支撑的领域(如数组处理、JSON 解析),转而专注于它最擅长的事情——提供一套稳定、统一且优雅的 DOM 操作 API。


参考资料:

  1. jQuery 4.0.0 Official Blog

  2. Hacker News Discussion on jQuery 4

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 13:02:07

SSM银行管理系统275d1(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面

系统程序文件列表 系统项目功能&#xff1a;用户,柜员,账户信息,存款信息,取款信息,转账信息,贷款项目,我要贷款,理财类型,理财产品,线下理财,线上理财 SSM银行管理系统开题报告 一、课题研究背景与意义 1.1 研究背景 在数字化金融快速普及的当下&#xff0c;银行作为金融服…

作者头像 李华
网站建设 2026/4/23 12:38:44

飞控冗余模块技术详解

一、什么是飞控冗余模块&#xff1f;简单来说&#xff0c;飞控冗余模块是通过增加额外的硬件、软件或数据通路&#xff0c;在系统发生单一或部分故障时&#xff0c;仍能保证飞行控制系统持续、安全工作的设计。其核心目标是“故障-安全”&#xff0c;即系统在出现故障时&#x…

作者头像 李华
网站建设 2026/4/21 10:15:42

<span class=“js_title_inner“>AI那些趣事系列116:智能问数:让人人都能玩转数据的 AI 黑科技</span>

导读&#xff1a;本文是 “数据拾光者” 专栏的第一百一十六篇文章&#xff0c;这个系列聚焦自然语言处理和大模型相关实践。今天主要是关于智能问数产品技术调研和分享。欢迎转载&#xff0c;转载请注明出处以及链接&#xff0c;更多关于自然语言处理、推荐系统优质内容请关注…

作者头像 李华
网站建设 2026/4/23 11:14:31

GBase8a 三大功能组件、进程及日志介绍(V953版本)

1、GBase 8a MPP Cluster 三大功能组件:Gcluster 组件:负责 SQL 的解析、SQL 优化、分布式执行计划生成、执行调度。 Gcware 组件:用于各节点 GCluster 实例间共享信息&#xff0c;以及控制多副本数据操作时&#xff0c;提供可操作节点&#xff0c;并在多副本操作中&#xff0c…

作者头像 李华
网站建设 2026/4/23 13:02:55

如何选择EOR名义雇主服务?2026年TOP5排行榜揭晓

在选择EOR名义雇主服务时&#xff0c;了解各家服务提供商的特点至关重要。每个EOR名义雇主都具有不同的服务优势&#xff0c;如合规支持、客户服务和技术平台的便捷性等。2026年的TOP5排行涵盖了万领钧Knit、Atlas阿特拉思、Deel迪尔、BIPO必博和Remote。企业应根据自身的需求和…

作者头像 李华