javascript - 多边形 array.filter() typeError

标签 javascript arrays google-maps polygon

我有一个名为坐标的数组,它存储多边形的纬度和经度。我想获取存储在该数组中的最大和最小纬度/经度。

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

coordinate.filter is not a function

// 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);
})

最佳答案

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

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

关于javascript - 多边形 array.filter() typeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47788395/

相关文章:

JavaScript 函数作用域

javascript - 我没有在客户端上实时看到带有 Node js的json文件的值

asp.net - 如何使用javascript查找提交来源

ruby - 在 Ruby 中动态创建数组

ios - 如何停止 GMSMapView 渲染器?

javascript - yepnope.js 在已加载的脚本之上注入(inject)脚本

c - C语言中struct中字符串的使用

c - 简单程序将 int16_t 数组转换为 uint16_t

android - 如果我使用 sdk 29,应用程序会因 MapView 而崩溃 ------

php - Google map 的加载屏幕