到目前为止,我已经学会了使用此功能的好处(被它包裹?)故障与(函数(){})()
所以,它几乎就像命名空间。 假设我们有:
(function() {
function foo(){
alert(true);
}
foo(); //alerts true
})();
(function() {
function foo(){ //the same title of the function as above
alert("another call of foo");
}
foo(); //alerts, ok.
})();
而且我发现它可以访问公共瓦尔,就像这样:
var __foo__ = 'bar';
(function() {
alert(__foo__); //alerts bar
})();
我有一个关于这个方法
我已经试过几个问题:
- 使用必应的教程(我发现他们,但他们中的许多人不回答我的问题)
- 播放与传递对象进入人体
- 在这里找到答案
但是,我还是打我的头撞在墙上
所以问题是:
我已经看到人们将对象作为参数传递,但是什么时候才有意义? 例如,这是什么意思?
(function(window) { })(document);
我看到水木清华这样的jQuery用户界面库
(function($) { //some code of widget goes here })(Jquery);
这使得功能外内码可见的,对不对? (不知道)为什么,这是因为 我们可以访问对象(比如我们有“模式”窗口小部件),只需调用它,
,如:
$(function(){
$("#some_div").modal(); //here it's object the we got from the function
});
而第二个问题是:如何它工作吗?
有什么问题吗?正如标题所示,您是否遇到了“(function(){})()'的实现问题?或者你只是问它如何工作以及何时使用它? – MrOBrian 2012-08-15 19:01:24
@MrOBrian那么,我有这两个问题。 – Yang 2012-08-15 19:02:32