JavaScript类库/组件/框架封装的总体结构

本文总结了JavaScript类库或框架的封装方式,通常是一个闭包结构,提供初始化入口构造实例,利用原型提供对外方法。以jQuery为例,介绍其通过自调用匿名函数创建私有命名空间,并将接口暴露给全局。传入window和undefined参数有利于代码压缩和性能优化。
摘要由CSDN通过智能技术生成

之前也有封装过简单的Javascript组件,但是因为没有遵循和参考过好的编码原则,封装的方式有诸多不妥。最近参考了几个框架的源代码解析,加上自己的理解,总结成文供以后参考。

笔者认为,所谓类库(或称框架)通常就是一个闭包,这个闭包可以访问外部宿主函数中定义的一些对外不可见的方法和变量,而对外提供的方法则放在类库的原型prototype中。关于闭包的概念,详见笔者的《深入理解JavaScript闭包》类库对外提供一个初始化的入口,用于构造实例对象,此时宿主函数就是实例的作用域。由于类库的内部实现对外界是透明的ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值