function1、2、および 3 をコールバックを介してつなぎ合わせる次のパターンがあります。
function1、2、および 3 が完了するまでに最大 1 秒かかる場合があるとします。より多くのコールバック関数がネストされたときにモンスターにならないように、同じことを行う他の「より良い」方法を知りたいです。
function1(function(cbData1){
if(cbData1){
function2(cbData1, function(cbData2){
if(cbData2){
function3(cbData2, function(cbData3){
// success
}
} else {
// failed for reason#2
}
});
} else {
//failed for reason#1
}
});
//example function
function function2(data, callback) {
// do dirty things
callback(newData);
}