您需要异步库。
例如,
for(var i = 0; i < listObj.result.length; i++) { varBody.index = i; varBody.memberID = listObj.result[i].program_member.id; request( ... , function () { // Do more Stuff });}可以这样写:
async.forEachOf(listObj.result, function (result, i, callback) { varBody.index = i; varBody.memberID = result.program_member.id; request( ... , function () { // Do more Stuff // The next iteration WON'T START until callback is called callback(); });}, function () { // We're done looping in this function!});异步中有很多方便的实用程序函数,这些函数使回调的使用变得更加容易。



