JavaScript For循环继续超出条件

JavaScript For Loop continuing beyond condition

本文关键字:条件 继续 For 循环 JavaScript      更新时间:2023-09-26

我有一个函数,它接受一个坐标数组并创建一个用于Google Maps API的路径。工作得很好,但突然它似乎决定继续循环超出条件,我不知道该做什么或为什么要这样做。我看了一遍又一遍,我觉得很对,所以我…

parseCoordinates = function (
    coordinates) {
    var paths = [];
    for (var i = 0, coordinate = null; coordinate = coordinates[i], i < coordinates.length; i++) {
        console.log(i);
        paths.push(new google.maps.LatLng(coordinate.latitude, coordinate.longitude));
    }
    return paths;
},

在测试用例中,我使用坐标数组有七个元素,当我将i输出到控制台时,它从0开始并达到6,但随后决定继续,最终导致空引用错误。谁能告诉我发生了什么事?提前感谢!

先设置coordinate = coordinates[i]再检查i < coordinates.length

没关系,我明白了。事实证明,我的JSON数据在末尾包含两个空coordinates对象,这就是为什么它抛出试图循环它们的错误。我只需要在使用for循环之前做一个null检查,这就是我在其他地方使用for循环时所做的这可能就是为什么我没有得到错误。对不起,浪费大家的时间了。