一个封装了选择器、事件委托、ajax...的简洁JS类库
当前是mvvm框架盛行的时代,各大社区基本都是在讨论react、vue和angular,我自己也用过vue.js,它将视图和逻辑分离,视图状态完全由数据驱动,编写起来思路很清晰,代码也容易维护,并且引入的虚拟DOM让我们免去DOM操作,保证高性能。
是不是jquery已经过时了呢?是的,我认为jquery过时了,但是过时的原因并不是因为mvvm取代了jquery。因为当前互联网的绝大部分的网站还是用来进行信息展示,需要进行数据交互的很少,我们需要做的仅仅是一些页面效果,而且对于大部分网站来说,SEO是他们必须要考虑的问题,而jquery能方便快速的胜任这样的工作,所以从这个角度来说jquery没过时。而我之前说jquery过时的真正原因是老式浏览器正在被逐步淘汰,这点百度统计中体现得很清楚。
我们都知道,jquery主要帮忙解决两大问题,一是兼容性,二操作方便性。兼容性问题将随着老浏览器的淘汰逐渐消失,而随着原生JS的完善,操作方便性问题也完全可以通过我们自己封装函数进行解决,就像 gecko.js 一样!所以,我认为jquery可以逐步退出历史舞台了。
总之,那些想要放弃DOM学习直接拥抱mvvm框架的新手前端还是非常有必要学习DOM的,毕竟应用场景还很多。而那些特别依赖jquery而不熟悉原生JS的同学,也应该多看看jquery的源码,理解它是如何实现的,如果觉得jquery源码太难,可以看看 gecko.js !
- 更轻量:只封装我们常用的jquery功能,如选择器、事件委托、ajax等。
- 更方便:增加了一些常用,但jquery没有的方法,如节流函数、分时函数、懒加载等。
- 性能稍高:因为jquery为了保证广泛适应性,考虑的情况非常多,非常细,很多方法都进行了层层抽象封装,而gecko基本就是调用原生JS。
- 易于学习:gecko.js参考了jquery源码,但远比jquery简单,适合初级程序员学习,而且我在编写过程中出错的地方进行了注释。
- 方便拓展:整个gecko.js代码结构清晰,所以你也可以很方便,很轻易地在gecko.js中添加自己的类方法(不是实例方法,即直接在gecko函数对象上添加方法,不会与gecko内其他代码耦合,就像ajax、节流函数这些都是类方法),打造一个适合自己js库。