2020年jQuery的发展状况如何?

发表时间: 2020-07-02 16:53

这回,是真的顶不住了,爬上来吼两句。

就在前两天,知乎上有个在校大学生,邀请我回答一个前端方向的问题。

他的问题是这样的:

「为什么很多大学老师都不重视前端,说学了 jQuery 就能找到工作?」

看到这个问题,当时我就不冷静了,于是,提笔而书,怒怼之。

严重怀疑这些大学老师还活在七八年前,睁眼看看日历吧,都2020年了,还说这么没羞没臊的话,我听了都脸红,呸,渣男~~~

那么问题来了,2020年,jQuery怎么样了?

想必我最有发言权。

无独有偶,最近有小伙伴跟我吐槽:在boss直聘上,遇到个外包,问我会不会vue里用jq,还说他就喜欢操作dom,当时我就很无语。。。

“哥,你怎么看?”

“他作死不用拦着他。”

一、

虽然jquery操作dom依然爽的一批,不过前端已经不怎么操作dom了。

对于我来说,我现在几乎已经不再直接使用 jQuery了,现在基本都是 VUE, Element UI, Axios 一把梭,几乎没有需要操作 DOM 的地方。

就这个问题,我也咨询过群里的几个大佬,他们的看法与我大致相同。

现在唯一使用 jQuery 的场景,是作为 Bootstrap 的依赖引入,但我也不会再写任何调用 $(...) 的代码。

因为绝大多数 jQuery 的功能都已经变成了浏览器内置的标准 API,需要用到时我去调 DOM API 就好了。

举个例子:
document.getElementsByClassName,嫌长的话,可以改写成querySelectorAll,或者const $ = document.querySelectAll。

只剩下非常非常少的用例,是 jQuery 能做但自己用 JS 重新实现一遍非常麻烦的,那时候只能用jQuery。

绝大多数需要做个 UI 的场景,都直接上 Create React App,然后用 Material UI 的组件,没有 jQuery 什么事情。

有些人选择用 Ant Design,那也可以,反正躲开了 Bootstrap 也就不需要 jQuery。

我还是希望 Boostrap 下一个官方大版本能够做到完全摆脱 jQuery,这样我可以再节省一个依赖项。

尤雨溪告诉我们,完全可以抛弃 bootstrap 上 tailwind css啊!

嗯嗯,有内味儿了,尤大一出手,就知有没有。

二、

当然,有弃jq而去的,也有还在拥抱jq的人群。

瘦死的骆驼比马大,jq依然是爸爸。

有人会说,你看人家B站就是这么搞的,一边用Vue,一边用jquery。

拜托,你先去B站F12看看,有没有用jq一目了然。

说到B站,前段时间有个哥们问我,哥,bilibili不是vue做的吗?为什么我看他的代码没有vue的影子啊?

还记得我当时的回复是:呐,你要的影子找到了~

Vue被Webpack打包起来了,所以看不到有请求vue.js库的。

然后这哥们说,入前端几个月了,感觉学的东西越来越多了。有很多东西都不懂,希望大佬能指点一下。

我告诉他,这个完全没没问题的,随时欢迎交流。不过,找我问问题的人太多,我怕回复不过来,因为我平时也很忙,有公司的工作任务,也有我自己的私事要忙。

小编是个多年开发经验的程序员,年初整理了一份最新的WEB前端教程,无论你是计算机专业想往前端方向发展,还是零基础想要转行做程序员,都可以通过教程学习。现在这份教程作为粉丝福利,分享给大家,只要关注我私信“前端”二字即可获取。

三、

话说回来,Jquery就真的没用了嘛?

当然不是,如果你的页面上有大量的特效 ,这个时候就不是改改数据能搞定的事情了。尤其在一些特效丰富,数据没什么交互的活动页。再比如动画种类较多的弹幕等等这个时候vue本身就很难搞定这些事情了。

因为动画还是需要大量的DOM操作,而vue虽然也支持DOM操作,但是非常不友好。

所以你最终要学会的是场景的分辨。

最后,说回本文的标题:2020年,jquery怎么样了?

说真的,不用的人早就不用了,用的人依然在用。

去年维护一个老项目时,最后一次用了jquery 。

看到这篇文章的每一个人,只要你们点进来了,都心里很明白jquery 已经没人用了,传统dom操作真的被react angular这些代替了。

但是,还是真的很感谢jquery ,至少它给我曾经带来了很多便利,尤其是ajax,在我心里,ajax永远是request 神器。虽然现在我的代码里,fetch这个单词慢慢多了起来。

行文至此,突然很怀念那段与jQuery斗智斗勇的刀耕岁月。

最后,请跟着我再深情呐喊一次:write less, do more。