如果proccess = true,我需要打破循环,但它未定义。
var mapFound;
var locations = {$addressTest};
for (var i = 0; i < locations.length; ++i) {
getCoordinates(
locations[i],
function(proccess) {
}
)
if(proccess) { break; }
}
答案 0 :(得分:1)
问题似乎基本上是getCoordinates()
进行异步调用。
当循环结束时,根据您的问题文本,您甚至没有收到第一个回复,因此您需要使用其他解决方案。
我的意思是,你赢了能够打破周期,因为在周期结束时你仍然没有&# 39;知道过程是否属实。
根据您的实施情况,您可能需要查看promises。虽然将整个事物包装在执行回调的函数中可能更容易:
function getCoords(locations, name, callback){
for (var i = 0; i < locations.length; i++) {
getCoordinates( locations[i], name,
function(proccess) {
if(process){
console.log("Map found in "+locations[i]);
callback.call();
}
}
);
}
}
getCoords({$addressTest}, {$name}, function(){
// Place here whatever you want to do once the map is found.
// you can get the map location by passing it as an argument for the callback.
});