[英]for loop not iterating through all of array
我正在尝试使用gmaps.js对来自json文件的邮政编码进行地理编码。
数组中有101个邮政编码,但是当我遍历它们以与gmaps.js一起使用时,它只会迭代11个。我试图寻找答案,但是我无法弄清楚,一切看起来都正确,这是我的代码
var getPostcodes = function () {
var json = "http://example.co.uk/addresses.json";
var request = new XMLHttpRequest();
request.open('GET', json, true);
request.onload = function () {
if (request.status >= 200 && request.status < 400) {
// Success!
var data = JSON.parse(request.responseText);
//GET POSTCODES IN ARRAY
var postcodesArray = [];
for (var i = 0; i < data.length; i++) {
postcodesArray.push(data[i].from_postcode);
}
var postcodes = postcodesArray.filter(Boolean);
//GET LAT/LONG POSITIONS
for (var n = 0; n < postcodes.length; n++) {
GMaps.geocode({
address: postcodes[n],
callback: function (results, status) {
if (status == 'OK') {
var location = results[0].geometry.location;
var latitude = parseFloat(location.lat().toFixed(8)),
longitude = parseFloat(location.lng().toFixed(8));
console.log(latitude + ' ' + longitude);
}
}
});
}
}
else {
console.log("failed");
}
};
request.send();
}
getPostcodes();
//编辑控制台日志
//编辑codepen链接
Google限制了每秒地理编码请求的数量。 我建议您在连续的请求之间保持睡眠。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.