我需要一些帮助来构建我的回调函数。问题:我的逻辑是否符合我的想象?
app = getApp(function(val1, val2){
helperFunction(val3, function(val4, val5, callbackTwo){
//...logic
var val6 = ....
callbackTwo(val6)
},
function(val6){
//logic
});
};
function helperFunction(val3, callback, callbackTwo){
//logic
callback(val4, val5, callbackTwo);
}
基本上它是有效的。然而,根据我的第一个匿名 callback
函数的逻辑,我的 callbackTwo
函数是否有可能在分配 val6
之前被触发?
最佳答案
这太可笑了。不确定为什么要将 callback2
传入/传出 helperFunction
,因为它不会做任何事情。相反,只需在原始回调中直接调用第二个回调的代码。除非您能给我们一个理由(没有明显的理由),否则只需将该逻辑放在您的第一个回调中即可。
我已尽我所能清理它,但您还没有为我们提供真正的、语法上有效的 JavaScript 以供我们使用:
App = getApp(function(val1, val2) {
helperFunction(val3, function(val4, val5) {
//...logic
var val6 = ....
//logic that uses val6, originally from callback2
});
};
function helperFunction(val3, callback){
//logic
callback(val4, val5);
}
请注意,“使用 val6 的逻辑”可以只是另一个函数调用,但没有理由将该函数作为 helperFunction
回调的参数。
关于javascript - 处理嵌套回调函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25210133/