这个javascript片段实际上是什么意思?

时间:2011-09-28 14:29:58

标签: javascript

来自HTML5 Mobile Boilerplate's helper.js:

(function(document){
    //all stuff here
})(document);

此代码段的作用是什么或何时运行?

4 个答案:

答案 0 :(得分:3)

这是一个闭包,它定义了一个方法,它接受一个参数document并立即用document作为参数调用它。

它一完成评估就会运行 - 所以基本上就马上就开始了。

答案 1 :(得分:1)

它创建一个临时的匿名函数,并使用名为document的参数调用它。据推测,它有一些隐藏在封闭范围内的局部变量。

答案 2 :(得分:1)

这是一个javascript函数,当浏览器在解析页面时遇到它时会立即执行。该函数接受一个参数,即window.document属性(在函数底部传入。

答案 3 :(得分:1)

如果你说:

(function(var1){/*stuff*/})(var2)

立即调用该函数并将var2传递给该函数。请注意,该函数是匿名的,不能直接调用。你可以在这里阅读一般的匿名函数和Javascript中的匿名函数:

http://en.wikipedia.org/wiki/Anonymous_function#JavaScript