这个javascript代码片段究竟意味着什么?
问题描述:
从HTML5 Mobile Boilerplate's helper.js:这个javascript代码片段究竟意味着什么?
(function(document){
//all stuff here
})(document);
这是什么片段何时做它运行?
答
它创建一个临时的匿名函数,并用一个名为document的参数来调用它。据推测它有一些局部变量,它隐藏在封闭范围内。
答
这是一个javascript函数,当浏览器在解析页面时遇到它时立即执行。该函数接受一个参数,即window.document属性(如函数底部所传递的那样)
答
这是一个闭包,它定义了一个方法,它接受一个参数document
并立即用文档作为。参数
它,因为它的评估完成后尽快运行 - 所以基本上马上
答
如果你说:
(function(var1){/*stuff*/})(var2)
立即调用函数,并传递var2
的功能。请注意,该函数是匿名的,不能直接调用。你可以在Javascript这里读一般的和匿名函数有关匿名函数:
顺便说一句,这是很难找到一个不同的标题时,我想要问的是“这是什么代码是什么意思?”。我不得不将“代码”更改为“代码段”,然后添加“实际”,所以我可以发布这个。 – keune