我有一些代码从WEB SQL数据库中选择值,使用以下代码完成:
db.transaction(function(tx) {
tx.executeSql(query, params_array, result, error);
});
在回调函数"结果"我只是将受影响的行返回到调用db.transaction()
电话看起来像这样:
database.select(<some params, not imporntant for now>, function(result){
//do stuff
}
如果我调用它一次我得到了我期望的db的输出,但是当我多次执行此调用时,只会执行最后一次调用的回调函数(我尝试了匿名和命名的回调函数)。
如何在不将回调嵌入彼此的情况下使这种异步调用工作:
database.select(<some params>, function(result){
//do stuff
//call again
database.select(<some params>, function(result){
//and so on...
});
});
答案 0 :(得分:0)
你可以为你的功能命名,但这个可读性要低10倍:D
database.select(<some params>, first);
function first(result) {
//do stuff
//call again
database.select(<some params>, second);
}
function second() {
//and so on...
}