初学前端的时候,必看的一本书叫《JavaScript DOM编程艺术》,也由此接触到jQuery。功能强大的选择器,易用的链式调用,丰富的插件,占据了自己很长一段时间的前端视野。再之后为了了解清楚它的原理,去读了一部分源码,封装自己的插件,读《JavaScript高级程序设计》来了解更深层一些的语言机制。
后来接触到 AngularJS(1.x),第一次接触到相对工程化思想的前端项目。再后来 Vue 和 React 也逐渐成为主流,形成三足鼎立的局面。甚至有段时间,大家都以鄙视 jQuery 为荣。数据驱动的思想为前端带来生产力的变革是巨大的,但并不代表曾经统治前端的 jQuery 就没有用武之地。时至今日,仍然有非常多的项目需要使用 jQuery 来维护,很多简单的展示型的项目用 jQuery 可能会更快更便捷。
从 jQuery 的角度讲,我所理解的它解决的主要问题是封装浏览器的差异,使前端开发人员不需要深究浏览器的实现的细枝末节。但随着 DOM API 的不断发展和统一以及移动端的热火朝天,它的价值确实在不断的降低。
从项目的角度讲,新项目的技术选型很难再回到 jQuery 上来,也就造成对 jQuery 技能的忽视。
从招聘的角度讲,目前的 JD 中最常出现的字眼还是三大框架的掌握,这也不自觉的让应届生或者应聘者去更多的学习框架相关的知识。
从个人的角度讲,jQuery 并不是非常难掌握的技术栈,应该成为前端开发人员的必备技能之一,追求短平快的小项目依然实用,同样的,如果实践过 jQuery 技术栈,也可以更好理解框架出现的原因和解决的痛点。
最后贴一个自己对于前端发展的简单认识,欢迎斧正。