首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从0开始实现一个简单的jQuery

废话少说,先上代码:

简单测试一把:

知识点:

面向对象基础,我用的是es5的,完全可以使用ES6的 class 来实现。

怎么在类的原型上扩展方法。

通过return this 实现链式调用。

使用闭包,防止全局污染。然后对外暴露访问的入口。

类似jQuery对外提供$方法的,我们在$方法中实例化类。

arguments的使用,注意会有和this一样的指向问题。

ES6 ... 语法的使用。可以将nodeList快速转成数组。

类的原型里面记得要重新指向一下 constructor为当前的类。

插件的扩展完全可以放在闭包里面,形成保护,因为对外的方法是挂载到了类的对象elements上面了,这个已经对外有暴露。

写在最后:

通过现象看本质,以上的实现只是一个最最基础的JQuery了,真正的jquery,比这个复杂得多 。希望我的这个简单的JQ,能让大家对jquery内部原理有一个更深层次的认识。

如果你发现有以上什么不对的,请一定要告诉我,反正我也不会改。VX公众号:itmlgb,你值得拥有。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190509A0289T00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券