到目前爲止,我已經學會了使用此功能的好處(被它包裹?)故障與(函數(){})()
所以,它幾乎就像命名空間。 假設我們有:
(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