我正在試驗創建一個Chrome擴展,並且在執行JavaScript時遇到了一個非常奇怪的問題。一些代碼接口延遲運行。在執行某個函數時是否存在一些JavaScript延遲
下面是代碼:
var windowArr = new Array();
function create(t) //t = tab to create new window with
{
newWindow = new Object();
newWindow.tabId = t.id;
chrome.windows.create(newWindow, function(w){windowArr.push(w.id);}); //w = new window
// Here is where it gets weird
alert(windowArr[0]);// returns "undefined"
alert(windowArr[0]);// returns "573" // the correct value
}
延遲是搞亂我的代碼等部位。
這可能是什麼原因造成的?
我的程序實際上是通過多個選項卡循環運行的。所以理想情況下,我想暫停我的程序,直到創建新窗口並調用其回調函數。你知道是否有任何構建函數或方法來做到這一點,或者我應該在調用chrome.windows.create之後添加一些類似於10毫秒的延遲? –