美文网首页
jquery源码解读系列一之总体架构

jquery源码解读系列一之总体架构

作者: SunshineKG | 来源:发表于2017-11-01 09:44 被阅读0次

    jquery的所有的代码都是被包裹在了一个立即执行的匿名函数表达式中,这种代码结构称为 “自调用匿名函数” 。当浏览器加载完jquery文件后,自调用匿名函数会立即执行,初始化jquery的各个模块。相关代码如下:(后面的jquery全用$表示)

    上面这段代码设计一些javascript基础知识和编程习惯,下面以提问的方式来逐一分析。

    1)为什么要创建这样一个自调用匿名函数?

    首先,创建这样一个自调用的匿名函数,就形成了一个特殊的函数作用域,该作用域中的代码不会和外面的代码冲突,比如变量,函数名,方法等。然后暴露出了jquery和$两个全局对象供外部调用。

    2)为什么要为自调用匿名函数传入window和undefined参数?

    第一,通过传入window和undefined,可以使其二者变为局部变量,这样在jquery代码块中访问二者的时候,不需要将作用域链回退到顶级作用域,从而可以更快的访问window对象,

    第二,undefined在IE9以及其他低版本浏览器中,是可以被修改的,这里传入就可以保证undefined的值始终是undefined。

    3)注意到自调用匿名函数最后的分号了么?

    通常在javascript中,如果语句分别放置在不同的行中,则分号是可选的,但是在对于自调用匿名函数来说,在之前或者之后省略分号都可能会引起语法错误。

    相关文章

      网友评论

          本文标题:jquery源码解读系列一之总体架构

          本文链接:https://www.haomeiwen.com/subject/rylrjxtx.html