作者:努力学习的PHP程序员 | 来源:互联网 | 2023-08-14 08:13
译者按:看来jQuery照样有一些用武之地的。原文:WhyI’mStillUsingjQueryin2019译者:Fundebug为了保证可读性,本文采纳意译而非直译。翻译仅供进修
译者按: 看来 jQuery 照样有一些用武之地的。
- 原文: Why I’m Still Using jQuery in 2019
- 译者: Fundebug
为了保证可读性,本文采纳意译而非直译。翻译仅供进修讨论,不代表 Fundebug 看法。
很多人都在首倡: “直接用原生的 Javascript 就好了,不须要 jQuery 了”。
You might not need jQuery尝试通知我们,挣脱 jQuery 是一件很轻易的事变。然则,它的第一个例子恰好通知我们用 jQuery 实在也不错,由于我们写了 10 行原生的 Javascript 代码,实在只须要 1 行 jQuery 代码就够了。
很多 Javascript 的 API,尤其是 DOM 相干的 API,挑战了我的审美哲学,直白点说,我以为它们太蹩脚了!el.insertAdjacentElement('afterend', other)
固然也能够用,然则$(el).after(other)
越发简约。$()
函数也没那末悦目,我没有迥殊喜好,然则它比原生的 API 好太多了。
你们怎样猎取某个元素的 sibling 呢?究竟用nextSibling
照样用nextElementSibling
?它们有什么差别?各个浏览器离别支撑哪一个要领?当你忙着去 MDN 查文档的时刻,我直接用 jQuery 的next
和prev()
就好了。
很多经常运用的 Javascript 的规范 API 都挺新鲜的,这里我就不列出来了,人人去You might not need jQuery看看就知道了。
写代码的时刻,我们总会须要运用一些经常运用的协助函数,You might not need jQuery列举了很多,运用 jQuery 能够很轻易的运用这些协助函数,如许我们就不须要每次都去 Stack OverFlow 上去了。。。
浏览器的兼容题目已没有之前那末头疼了,然则它照样个不小的题目,除非你以为只需 85%的用户 OK 就行。关于这个题目,人人能够浏览我的Why Hello CSS doesn’t use CSS variables。
那末,我们必需运用 jQuery 吗?固然不是!运用任何第三方库都是有价值的,增加了复杂度,也增加了文件大小。然则,jQuery 实在没那末大,紧缩以后的大小只要 30K。假如我们去掉 ajax 以及一些不经常运用的功用的话,就只要 23K;假如我们运用 querySelector 替换 SizzleJS 来构建的话,则只要 17K 了。无论是 30K 照样 17K,对很多运用来讲,这个大小都是完全能够接收的。
人人无妨看看Bootstrap removing jQuery,为了移除 jQuery,他们也是花了不少精神啊:自身撸协助函数;摒弃兼容 IE,由于太难写了;他们花了 1 年半时候来捣腾这个。终究的效果在我看来,这些勤奋好像不值得。
我明白他们为何这么做,人人愿望在 Vue 项目中运用 Bootstrap,然则同时运用 Vue 和 jQuery 的话有点傻。关于削减网页大小,我异常赞同,也很喜好Web bloat与The Ethics of Web Performance两篇博客中的看法。然则,我们须要现实一点,不要过于理想主义。增加 17K 的 jQuery 真的那末蹩脚吗?当我吐槽 Medium 或许 New York Times 如许的网站须要的 JS 文件凌驾 1M 的时刻,有的人会如许辩驳:”岂非你还在用 56k 的带宽?“,然则,为何 17K 的 jQuery 就那末不能接收了呢?
不必 jQuery 而自身写协助函数也能够,比方你愿望你写的函数被其他人复用,或许你写的函数迥殊小。然则为了不必 jQuery,摒弃向后兼容?那我以为照样用 jQuery 得了。一切事变都用 jQuery 完成固然不好,然则任何时刻都不必 jQuery也不是什么明智之举。
我不是 jQuery 的狂热粉丝,我也情愿运用一些简化版的 jQuery,只需它们能够让 JS 的 API 更好用一点。You might not need jQuery引荐了bonzo和$dom,以及其他一些 AJAX 库,然则大多数看起来没怎么保护。假如没有充足吸引人的来由,最好不要去替换 jQuery,由于 jQuery 自身没什么大缺点。
有些读者或许会去比较 Vue, React 以及其他前端框架,然则这篇博客的目标是比较 jQuery 与原生的 Javascript,没有盘算去论证全部前端究竟应当怎样开辟。
话说回来,我以为有些场景下只运用简朴的 Javascript 也挺好的,重要原因是我愿望网页能够充足快,能够让只管多的人一般接见。以我的履历,运用服务端衬着,再加上渐进式加强 Javascript,是最好的完成体式格局,开辟起来很简朴,接见速率充足快,BUG 也很少。
岂非前端框架不好吗?固然不是,没有什么相对不好的手艺,一切手艺都有肯定的弃取,固然也包含 jQuery。
参考
- GitHub:我们是如许弃用jQuery的
- 为啥jQuery被镌汰了?
- 为何越来越少的人用jQuery
关于Fundebug
Fundebug专注于Javascript、微信小顺序、微信小游戏、支付宝小顺序、React Native、Node.js和Java线上运用及时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了10亿+毛病事宜,付费客户有Google、360、金山软件、百姓网等浩瀚品牌企业。迎接人人免费试用!
版权声明
转载时请说明作者Fundebug以及本文地点:
https://blog.fundebug.com/2019/06/04/why-i-am-still-using-jquery-in-2019/