可能的重复:
这个JavaScript/JQuery语法如何工作:( function(window,undefined){})(window)?
使用(函数(窗口,文档,未定义){...})(窗口,文档)赋予什么优势?
我见过很多javascript库创建一个名为"undefined"的变量,iam无法弄清楚它的用途,下面是从jQuery库复制的行
* Date: Wed Feb 23 13:55:29 2011 -0500
*/
(function( window, undefined ) {
// Use the correct document accordingly with window argument (sandbox)
var document = window.document;
var jQuery = (function() {
Run Code Online (Sandbox Code Playgroud)
请告诉我这样做的原因和好处!!
你会看到的是这样的:
(function(undefined) {
/* lots of code */
}());
Run Code Online (Sandbox Code Playgroud)
这将创建一个匿名函数并立即执行它.该函数有一个名为的参数undefined.由于没有传递给函数的参数,因此该变量undefined实际上是Javascript 原始值undefined.
那么你为什么要这样做呢?好吧,问题是你可以用名称创建一个变量并将其undefined设置为你喜欢的任何变量,例如:
var undefined = 'some text';
Run Code Online (Sandbox Code Playgroud)
myvalue === undefined然后,代码中的测试会产生意外结果.
具有参数的匿名函数undefined实质上称为"重置" undefined原始值的值,以便您可以根据需要进行检查,而不必担心它是否具有正确的值.
| 归档时间: |
|
| 查看次数: |
711 次 |
| 最近记录: |