【发布时间】:2014-07-01 12:03:54
【问题描述】:
我的index.html 中只有两行(见下文)代码。我想在执行第二行之前执行第一行。我该怎么做/确保这一点?目前,dataDB 的控制台中将出现“未定义”,因为函数 getDataFunction() 需要一些时间。
var dataDB = getDataFunction(afterDate, toDate, afterTime, toTime);
console.log("Content of dataDB: " + dataDB);
对您来说可能是一个简单的问题 :-) 感谢您的帮助!
更新:getDataFunction() 这个函数只是用d3(数据驱动文档)从服务器获取一些数据(collection+json)...参数用于识别感兴趣的数据(时间范围)。
function getDataFunction(afterDate, toDate, afterTime, toTime){
d3.json("http://server...", function(error, data){
if(error) {
console.log(error);
} else {
console.log(data);
dataDB = data.collection.items;
console.log(dataDB);
}
});
}
【问题讨论】:
-
可能和你getDataFunction的内容有关。你需要提供更多关于你在那里做什么的信息。可能是一个设置为异步的ajax调用。它会解释这种行为。
-
正如您在上面看到的,我已经用有关 getDataFunction() 的附加信息更新了原始问题。
标签: function call execution synchronous