Polygon array.filter()typeError

时间:2017-12-13 08:18:52

标签: javascript arrays google-maps polygon

我有一个名为coordinate的数组,它存储多边形的纬度和经度。我想得到存储在这个数组中的最大和最小纬度/经度。

我的逻辑是使用array.filter()方法来过滤值,但我的控制台一直在说

  

coordinate.filter不是函数

// this is to get coordinate(lat and lng) of a map, lats and lng are being stored in array named coordinate

var coordinate = [];

for (var i = 0; i < polygon.getPath().getLength(); i++) {
    coordinate  += polygon.getPath().getAt(i).toUrlValue(6) + ",";
}

var results =coordinate.filter(function(value) {
    return(value< 0);
}
);

alert(coordinate);
})

1 个答案:

答案 0 :(得分:0)

您需要确保您的坐标是一个数组。查看您的注释,您希望在坐标数组中找到最小值和最大值,可以通过以下方式完成:

if(Array.isArray(coordinate)){
 let min = coordinate.reduce((a,b) => Math.min(a,b));
 let max = coordinate.reduce((a,b) => Math.max(a,b)); 
}