我不知道我问的事情是否有一个术语,所以我将尝试说明它:
我有一个函数,它需要一组联系人,然后循环访问以更新他们在网站上的状态。'something.getStatus' 函数不返回任何内容,但在成功完成后,它会给出用户的状态(在线/离线/等)。
这里的问题是,当调用里面的函数时,变量 user_id 是所有函数调用的数组中的最后一个,因此无法知道如何有什么状态。
function gotGroupContacts(contacts) {
for ( i = 0; i < contacts.length; i++) {
var user_id = contacts[i];
something.getStatus(user_id, function(resp) {
updateLinkStatus(user_id, resp.status, resp.statusMessage);
}, getStatusErrorHandler);
}
}
有什么办法可以“锁定”变量,或者将其传递给内部的函数?