Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在列表中查找与县最近的县_Javascript_Jquery_Google Maps - Fatal编程技术网

Javascript 在列表中查找与县最近的县

Javascript 在列表中查找与县最近的县,javascript,jquery,google-maps,Javascript,Jquery,Google Maps,我一直在研究一些反向地理编码问题 用户搜索某个位置后,我从地理编码结果中提取该县 for (var i = 0; i < results[0].address_components.length; i++) { var component = results[0].address_components[i]; if (component.types[0] == "administrative_area_level_2") { var county = com

我一直在研究一些反向地理编码问题

用户搜索某个位置后,我从地理编码结果中提取该县

for (var i = 0; i < results[0].address_components.length; i++) {
    var component = results[0].address_components[i];
    if (component.types[0] == "administrative_area_level_2") {
        var county = component.long_name;            
    }
countySearch(county);
}
如果JSON中没有匹配项,那么我想找到下一个最接近的县。我将使用一个名为findNearestCounty的函数来实现这一点。关于如何在JSON中找到下一个最近的县,有什么建议吗?我想我可以在JSON中添加一个lat/lng字段,然后这样做,但我想看看是否有人有更好的想法

谢谢


j

很容易找到两点之间的距离,找到到不规则边界的距离就不那么简单了。你能把你的JSON文件也放进去吗?你说“可以在JSON中添加lat/lng字段”,JSON中有位置数据吗?要找到“最近的县”,你需要知道县在哪里(多边形或质心),以及比较位置在哪里。这就是我所想的。我将在每个县创建一些点,然后将我的搜索位置与最近的点(县)匹配。我希望能有一些巧妙的方法来使用谷歌的geocoderIf,如果你只与一个美国州合作,那么你可以手工制作一个JSON对象,其中有一个县列表,每个县都有一组相邻的县。
function countySearch(county){  
    $.each(countyJSON, function(i){     
        if(countyJSON[i].county==county)
        {           
            console.log('math at row' + i);
        }
        else if(i==chapters.length-1 && chapters[i].ZIP!=zipCode)
        {
            console.log('no match in JSON');
            findNearestCounty(county);
        }       
    });         
}