【发布时间】:2010-10-20 14:15:41
【问题描述】:
我想在循环运行时向 Google 地理编码器 API 调用添加一些额外的参数,但我不确定如何将闭包参数附加到它们的匿名函数中,该函数已经具有由调用 API。
例如:
for(var i = 0; i < 5; i++) {
geocoder.geocode({'address': address}, function(results, status) {
// Geocoder stuff here
});
}
我希望能够在传递的 geocoder.geocode() 匿名函数中使用 i 的值,但是如果我在第 4 行使用 }(i)); 进行了闭包,那么它将替换第一个参数,这会破坏地理编码器。
有没有办法可以使用闭包,或者将 i 的值传递给匿名函数?
实际上我想做的是:
geocoder.geocode({'address': address}, function(results, status, i) {
alert(i); // 0, 1, 2, 3, 4
}(i));
但工作:-)
【问题讨论】:
标签: javascript closures google-geocoder