我需要運行SQL SELECT語句並存儲結果。然後我需要將這些結果傳遞給一個函數,並根據給定的數據點創建一個圖。見下面的代碼。JavaScript在第一次完成前執行第二行代碼
var dataKWhr = getCoverageAndKWhr();
console.log(dataKWhr);
createGraph(dataKWhr);
console.log("Created graph");
的getCoverageAndKWhr
功能開始運行,但原函數的其餘部分繼續與日誌語句和createGraph
。這會失敗,因爲此時dataKWhr未定義,因爲它的值尚未從getCoverageAndKWhr()
返回。
我寧可不延遲固定的秒數。在繼續之前是否有辦法等待第一行完成?
這是一個帶有jQueryMobile的PhoneGap應用程序。目前正在Android上測試。
你將需要傳遞一個回調函數getCoverageAndKWhr(),以便按照你想要的方式工作。 –
如果getCoverAndKWhr中有任何異步代碼,您將需要一個回調函數,如@ErrolFitzgerald所述。 – Markasoftware
[獲取Webkit的executeSql事務返回值]的可能的重複(http://stackoverflow.com/questions/740523/getting-a-webkit-executesql-transaction-to-return-a-value) –