2013-09-29 42 views
1

我在 的NodeJS漂亮新手這是一個非常簡單的PHP的例子,我想在初學者node.js的回調例如

的NodeJS
$key='foo'; 
$inside= openthedoor($key); 
if(!$inside){ //wrong key 
    $key= getanewkey();//get a new key 
    $inside= openthedoor($key);//open the door again 
} 

寫我怎樣才能做到這一點回調的NodeJS?
愚蠢的問題appologies。

回答

2

請記住,你仍然可以寫的東西在同步Node.js的,但如果openthedoor()沒有發生需要一個回調函數,這是什麼樣子:

var key = 'foo'; 
openthedoor(key, function(inside) { 
    if (!inside) { 
    key = getanewkey(); 
    openthedoor(key, function(inside) { 
     // check if we're inside again 
    }); 
    } 
}); 

回調函數是在完成另一個功能時調用的函數。當有一個結果

var callback = function(inside) { 
    if (!inside) { 
    // do something else 
    } 
}); 

進入這個功能被稱爲:

openthedoor(key, callback); 
+0

謝謝你在這個例子中,你通過這個功能!我試圖按照相同的概念來實際構建: 1-我嘗試獲取google api上的日曆列表 2-如果令牌被拒絕我生成新的令牌 3-使用新的令牌我再次調用再次檢索數據 http://snipt.org/Ahhgb6 它確實得到新的令牌,但它沒有得到日曆列表。我哪裏做錯了? –