jquery源码的总体架构
来源:互联网 发布:淘宝小号怎么注册 编辑:程序博客网 时间:2024/05/24 05:45
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">jquery的所有代码都放在一个自执行的匿名函数中</span>
<span style="font-size: 14px;"> (function(window,undefined){ }(window));</span>为什么要放在自执行的匿名函数中?
1.创建一个特殊的函数作用域,这个作用域中的代码不会跟其他同名的函数,变量等代码冲突
2.加载完JQ文件后,函数会自动执行,初始化所有功能。
为什么要传进参数window而不直接在匿名函数内部使用window?
原因:
1.window处于作用域链的顶端,直接使用window查找速度比较慢。若传入window,则window作为函数参数就是一个局部变量,按照JS作用域链的原理,会先查找局部变量,不用上溯查找window,这样可以更快地访问window对象
2.便于压缩咯,假设函数的形参为一个字母a或b,window作为实参传进函数,以后再函数内部就可以用形参a表示啦,用一个字母代表window,当然字节小了,文件大小就小了
undefined设置为参数的原因:
其实也是与作用链有关,因为undefined是window对象的一个属性,在某些浏览器下undefined是可以被重写为另外一个值的,如果把undefined作为参数传入,其作为一个局部变量,可以更快地查找到undefined,更重要的是:可以确保参数undefined的值是undefined,而非可能被修改后的值
jquery对外提供的接口有两个$(),jQuery()
很多库中都会使用$,为了防止冲突:
// Map over jQuery in case of overwrite_jQuery = window.jQuery,// Map over the $ in case of overwrite_$ = window.$,比如jquery的用户自己定义了一个变量
var $=1;
那么在jquery内部就会被存为_$,可以防止冲突
0 0
- jquery源码的总体架构
- jQuery总体架构的理解
- jQuery源码分析-01总体架构
- jQuery源码分析-01总体架构
- jQuery源码学习之总体架构
- jQuery源码学习笔记:总体架构
- jQuery源码分析-01总体架构
- jQuery源码分析-01总体架构
- jquery源码分析之总体架构
- jquery总体架构
- Jquery总体架构
- jQuery源码分析(版本1.6.1)___总体架构
- JQuery3.1.1源码解读(一)【jQuery总体架构】
- Tomcat源码分析--总体架构
- Hessian源码分析--总体架构
- jquery的总体架构分析及实现示例详解
- jQuery 总体源码结构笔记
- lucene的总体架构
- 安卓支付宝抢红包脚本软件
- Unity* 原生 X86 支持使Square Enix的Hitman GO*卓尔不凡
- Linux系统瓶颈分析(经典)
- 黑马程序员---NSDictionary\NSMutableDictionary
- No package g++ available问题解决
- jquery源码的总体架构
- 【Cocos2d-x 3.2】拖尾渐隐效果MotionStreak
- 【零碎JAVA】表单文件上传
- Storyboard(三)性能
- 64位安卓* 和安卓运行库
- 浙大PAT目录
- Java内部类的使用小结
- ubantu安装配置配置samba
- Appium源码项目的目录结构分析