趁着今天是2022最后一天,不水一遍过不去(划掉)
由于现阶段对前端行业总体不甚了解,若有错误欢迎大佬指出✓。
前端大环境是怎样的?
当今的前端环境,是MVVM框架为主宰的世界。除去机关或一些年代久远没钱没精力修的项目,最广泛使用最流行的并不是原生三件套,而是React、Vue等Javascript框架。
像 Wordpress(React与jQuery混用)和 B 站(Vue与jQuery混用)这样的混合项目即使仍然是比较出色的,但是上述Javascript框架工作原则是通过虚拟DOM来渲染页面提高效率。而jQuery不同,它不是一个框架,而是一个封装的库,它直接操作DOM,这必然导致开发中的冲突和问题。所以绝大多数现代的前端项目,均没有与jQuery混用的迹象。
对专业前端工作人员
没必要用,但建议浅浅了解。
首先,jQuery中封装好了很多的现成的Javascript的操作,一如其口号“Write less, do more”。虽然jQuery对新人很方便,能够便利地操作页内的元素,对其动画等进行设置,但它终归是操作实际存在的DOM元素,与虚拟DOM的趋势是相背的。
但这就说明不需要学jQuery了吗?不一定。前端工作中需要对各种框架的原理进行理解,而jQuery中很多对Javascript API的使用十分经典,有益于对框架的学习,作为框架的前置知识。
所以,jQuery可以是一个跳板,用完即扔。
对不深入学习的爱好者
原生的能做到的事,没必要再搞其他的库了。
当初咕咕我学jQuery,是想给网站整些小小的动画效果,毕竟jQuery的动画写起来确实挺方便的。事实上,jQuery主要也就是动画,交互和 Ajax。
但是CSS 3出来之后,我们可以直接使用原生CSS 3来编写页面元素的动画,减少了性能的损耗。
至于交互,$(选择器)
固然好用,避免了getElementById
和 getElementByClass
的限制。但是Javascript后来又添加了document.querySelector(选择器)
方法,这样一来,$(选择器)
的写法似乎就失去了意义。
至于Ajax,现在已经有更轻量、更现代化的Axios来帮助我们进行HTTP的数据请求。
这样看来,jQuery很多功能都有对应的替代品,弃用jQuery既避免了客户端的性能损耗和等待时间,也降低了网站的流量和请求。毕竟这个比我年龄还大的库,也该寿终正寝了。有时间学jQuery,拿来学其他的不香么?(手动滑稽)
冷知识:直到现在,全球仍有75%的网站在使用jQuery!
(注:本文所著仅代表个人观点,部分参考于https://zhuanlan.zhihu.com/p/82801191)