出于某种原因,我在下面写的代码(我正在制作的POST路径)并不完全按照我的想法运行。Javascript回调函数错误
app.post("/", function (req, res, error) {
var message = "";
tableSvc.createTable("tableName", function (error, result,response){
if (error)
message += "There was an error in creating this table";
else
message += "Table created succesfully";
});
console.log(message);
});
不是打印"There was an error..."
或"Table created..."
的,上面只代码打印出一个空字符串。
我知道回调函数正在执行,因为如果我将console.log(message)
置于回调函数内部,那么上面两个字符串中的任何一个都会打印到控制台。
我是Javascript和调用函数的新手,为什么我的代码不按照我的意图执行?
'createTable'调用是异步的,所以当你console.log消息时,回调还没有执行。 – 2014-09-01 04:20:09