繁体   English   中英

for循环未遍历整个数组

[英]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链接

http://codepen.io/anon/pen/gwWgzB

Google限制了每秒地理编码请求的数量。 我建议您在连续的请求之间保持睡眠。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM