jQuery 都 4.0 了。看到這個消息,很容易順手回一句「原來還有人用喔」,但想了一下,這句話對正在維護舊網站的人大概滿沒幫助的。人家的網站還在接訂單、跑報表,又不會因為前端社群換了話題,就自己長出一套 Vue。
這次正式版在 2026 年 1 月 17 日發布,距離上一次主要版本更新已經將近十年。我反而覺得它能繼續更新是件好事。舊系統最尷尬的狀態,就是功能還好好的,底下的工具卻沒人顧了;想留不安心,想換又是一大筆工作。
不過,jQuery 4 也沒有打算假裝這十年沒發生過。像 $.trim()、$.parseJSON() 這些以前順手拿來用的東西,這版正式移除了,改用原生的 trim()、JSON.parse() 就好。原始碼也搬到 ES modules。瀏覽器自己會做的事多了,jQuery 確實不需要再包辦那麼多。
有個細節倒是滿有年代感的:它這次移除的是 IE 10 以下的支援,IE 11 還留著。不是所有網站都能跟著最新版瀏覽器一起往前跑,這種更新幅度,大概也反映了還在使用它的人需要什麼。
比起要不要用,更難的是要不要拆#
新開一個只有幾個按鈕互動的頁面,我大概不會再特別裝 jQuery。原生 JavaScript 已經夠方便,有比較多狀態要管理,就用自己熟悉的框架。這部分其實沒什麼好爭的。
比較難判斷的是既有專案。假設後台的表格、日期選擇器和表單驗證都靠 jQuery plugin 串起來,這時接到一個「多加篩選條件」的需求,很難說服自己順便把整套重寫。真正讓人不安的,通常也不是那幾個 $,而是其中一個外掛最後更新已經不知道多久以前,壞掉時還找不找得到人問。
所以升到 4.0,我會先看外掛,而不只看自己寫的程式。你的程式沒用到被移除的 API,外掛可能有。官方的升級指南和 jQuery Migrate 可以協助找相容性問題,但跑得起來之後,表單、彈窗、日期選擇這些實際操作還是得試。
如果最後發現最麻煩的是一個早就沒人維護的 plugin,那就先處理那個。為了一個日期欄位重做整個後台,光想到要重新確認那些平常沒人記得的操作細節,我就覺得頭有點痛。