2012-05-05 76 views
0

返回如果我if語句調用這樣:對時間敏感的功能

if(someRandomFunction()){ 
    //do stuff 
} 

如果被調用函數返回true,但各種調用的延時和定時動畫後,這是否會導致if語句失敗?

回答

0

當你說「各種被調用的延遲和定時動畫」時,我假定你正在討論對window.setTimeout()等的調用。

當一個函數像這樣註冊一個延遲事件時,函數在註冊事件後繼續執行,事件通常會在註冊函數完成執行後觸發。

稍後執行的內容也是函數。它們可以返回值,但由於這些函數實際上是由瀏覽器調用的(當它知道是時候調用它們)時,這些值會返回給瀏覽器。至少在setTimeout()setInterval()的情況下,返回值被忽略。

當你調用一個函數時,你可以(至少在javascript中)對該函數進行計數,以便將該函數返回給你。

0

它取決於函數的工作方式,如果總是明確返回true的條件是true

+0

一旦每個循環完成,它總是返回true。基本上,我只想在each()完成後運行某個函數。 –

+0

你需要的是一個回調! – adeneo

+0

是的,這是作爲回調。 –