jquery源码阅读知识储备(1)

来源:互联网 发布:哈苏x1d淘宝上价格 编辑:程序博客网 时间:2024/06/06 03:52

 

为什么会有一个名为 undefined 的形参呢?

原来,Javascript 中的 undefined 并不是作为关键字。因此可以允许用户对其赋值。

 

 

 

如此一来,假如 jQuery 中使用下面的写法:

 

 

必然造成中间代码里的 undefined 遭到污染。因为在默认情况下,对于一个未定义的变量,它的值应该是 undefined,假如用户使用形如

 

 

的代码进行赋值,那么,jQuery 中的 undefined 的值就变成了用户指定的值(这里是字符串 ‘myValue’)。这样会造成 jQuery 内部异常。

jQuery 采用的这种写法,就很好的避免了这个问题。

 

在执行匿名函数的时候,只传递一个参数 window, 而不传递 undefined,那么函数体中的 undefined 局部变量的值,刚好就是 undefined. 甚为巧妙啊。

 

 

 

我觉得这是一个比较好的技巧吧,看看我的测试代码: