趁着今天是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。
但是CSS3出来之后,我们可以直接使用原生CSS3来编写页面元素的动画,减少了性能的损耗。
至于交互,$(选择器)
固然好用,避免了getElementById
和getElementByClass
的限制。但是Javascript后来又添加了document.querySelector(选择器)
方法,这样一来,$(选择器)
的写法似乎就失去了意义。
至于Ajax,现在已经有更加易于使用的轻量的Axios来帮助我们进行数据的取用,即使没有学习过node也能直接在script中引用。
这样看来,jQuery很多功能都有对应的替代品,弃用jQuery既避免了客户端的性能损耗和等待时间,也降低了网站的流量和请求。毕竟这个2006年比我年龄还大的库,也该寿终正寝了。有时间学jQuery,拿来学其他的不香么?(手动滑稽)
(注:本文所著仅代表个人观点,部分参考于https://zhuanlan.zhihu.com/p/82801191?utm_id=0)