利用谷歌地图API获取点与点的距离的js代码


Posted in Javascript onOctober 11, 2012
var request; 
var distanceArray = []; 
function getdistance() { 
distanceArray = []; 
var directionsService = new google.maps.DirectionsService(); 
for (var a = 0; a < pointsArray.length; a++) { 
for (var b = 0; b < pointsArray.length; b++) { 
if (a != b) { 
request = null; 
request = { 
origin: pointsArray[a], 
destination: pointsArray[b], 
travelMode: google.maps.DirectionsTravelMode.DRIVING, 
unitSystem: google.maps.DirectionsUnitSystem.METRIC 
}; 
directionsService.route(request, function (response, status) { 
if (status == google.maps.DirectionsStatus.OK) { 
var myRoute = response.routes[0].legs[0].distance.value; //路线长度 
distanceArray.push(myRoute); 
} 
}); 
} 
} 
} 
}

有一个问题想与大家交流一下,利用谷歌地图API获取批量的点点之间的距离时,如何保证自己得到的距离信息是有序的?

比如:有pointsArray[]中有a,b,c三个点的数据,我怎么才能按序得到[a,b],[a,c],[b,a],[b,c],[c,a],[c,b]的距离信息。

在上面的代码中,所有a!=b的距离都是一次性传给directionsService.route进行求解的,也就是说,外围的FOR循环控制对其没有用。所以想依靠FOR循环一个一个按序获得距离的期望失败了。但是如果在其中加入调试,一步一步控制其循环求解的过程,却能得出有序距离数组。不得其解啊!

Javascript 相关文章推荐
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
Feb 27 Javascript
node.js中的console.time方法使用说明
Dec 09 Javascript
JavaScript动态添加列的方法
Mar 25 Javascript
JavaScript使用indexOf获得子字符串在字符串中位置的方法
Apr 06 Javascript
原生js和jQuery写的网页选项卡特效对比
Apr 27 Javascript
jQuery mobile在页面加载时添加加载中效果 document.ready 和window.onload执行顺序比较
Jul 14 Javascript
浅谈JavaScript中变量和函数声明的提升
Aug 09 Javascript
jQuery表单插件ajaxForm实例详解
Jan 17 Javascript
Angular2入门--架构总览
Mar 29 Javascript
JS基于贪心算法解决背包问题示例
Nov 27 Javascript
vue 中使用 watch 出现了如下的报错的原因分析
May 21 Javascript
vue实现直播间点赞飘心效果的示例代码
Sep 20 Javascript
关于JS控制代码暂停的实现方法分享
Oct 11 #Javascript
JS判断页面加载状态以及添加遮罩和缓冲动画的代码
Oct 11 #Javascript
js函数的延迟加载实现代码
Oct 11 #Javascript
javascript中方便增删改cookie的一个类
Oct 11 #Javascript
js事件(Event)知识整理
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记12 js正则表达式
Oct 11 #Javascript
You might like
杏林同学录(二)
2006/10/09 PHP
php-fpm配置详解
2014/02/12 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
JavaScript中的this实例分析
2011/04/28 Javascript
网页中返回顶部代码(多种方法)另附注释说明
2013/04/24 Javascript
提高jQuery性能的十个诀窍
2013/11/14 Javascript
基于jQuery实现复选框是否选中进行答题提示
2015/12/10 Javascript
Vuejs 组件——props数据传递的实例代码
2017/03/07 Javascript
使用cropper.js裁剪头像的实例代码
2017/09/29 Javascript
详解如何在react中搭建d3力导向图
2018/01/12 Javascript
微信小程序自定义组件之可清除的input组件
2018/07/17 Javascript
详解关于vue2.0工程发布上线操作步骤
2018/09/27 Javascript
vue+elementUI实现表单和图片上传及验证功能示例
2019/05/14 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:奇迹哥卡尔秀翻全场
2017/03/28 DOTA
记录Django开发心得
2014/07/16 Python
用Python实现一个简单的多线程TCP服务器的教程
2015/05/05 Python
讲解Python中fileno()方法的使用
2015/05/24 Python
Python的MongoDB模块PyMongo操作方法集锦
2016/01/05 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
2018/05/08 Python
基于python 爬虫爬到含空格的url的处理方法
2018/05/11 Python
Tensorflow 合并通道及加载子模型的方法
2018/07/26 Python
python 绘制拟合曲线并加指定点标识的实现
2019/07/10 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
2020/06/04 Python
keras.utils.to_categorical和one hot格式解析
2020/07/02 Python
linux系统下pip升级报错的解决方法
2021/01/31 Python
MediaMarkt比利时:欧洲最大电器连锁店
2020/12/21 全球购物
求∏的近似值,直到最后一项的绝对值小于指定的数
2016/02/12 面试题
营业员个人总结的自我评价
2013/10/25 职场文书
个人自荐信
2013/12/05 职场文书
超市营业员岗位职责
2013/12/20 职场文书
幼师中班个人总结
2015/02/12 职场文书
银行自荐信怎么写
2015/03/05 职场文书
2016年艾滋病宣传活动总结
2016/04/01 职场文书
送给客户微信问候语!
2019/07/04 职场文书
如何使用pdb进行Python调试
2021/06/30 Python