利用谷歌地图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 相关文章推荐
Array.prototype.slice.apply的使用方法
Mar 17 Javascript
JQUBAR1.1 jQuery 柱状图插件发布
Nov 28 Javascript
D3.js实现饼状图的方法详解
Sep 21 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
Dec 06 Javascript
jQuery.parseHTML() 函数详解
Jan 09 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
Jan 20 Javascript
vue2.0项目实现路由跳转的方法详解
Jun 21 Javascript
JS实现判断有效的数独算法示例
Feb 25 Javascript
使用npm命令提示: 'npm' 不是内部或外部命令,也不是可运行的程序的处理方法
May 14 Javascript
vue v-for出来的列表,点击某个li使得当前被点击的li字体变红操作
Jul 17 Javascript
Vue实现购物小球抛物线的方法实例
Nov 22 Vue.js
详解Typescript里的This的使用方法
Jan 08 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
PHP多维数组指定多字段排序的示例代码
2018/05/16 PHP
tagName的使用,留一笔
2006/06/26 Javascript
一步一步制作jquery插件Tabs实现过程
2010/07/06 Javascript
JQuery自适应IFrame高度(支持嵌套 兼容IE,ff,safafi,chrome)
2011/03/28 Javascript
详解jquery uploadify 上传文件
2013/11/09 Javascript
简单介绍JavaScript数据类型之隐式类型转换
2015/12/28 Javascript
js 求时间差的实现代码
2016/04/26 Javascript
js匿名函数作为函数参数详解
2016/06/01 Javascript
JavaScript交换两个变量值的七种解决方案
2016/12/01 Javascript
解决html input验证只能输入数字,不能输入其他的问题
2017/07/21 Javascript
JS设计模式之策略模式概念与用法分析
2018/02/05 Javascript
微信小程序实现验证码获取倒计时效果
2018/02/08 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
Vue CL3 配置路径别名详解
2019/05/30 Javascript
jQuery创建折叠式菜单
2019/06/15 jQuery
记录vue做微信自定义分享的一些问题
2019/09/12 Javascript
koa2 数据api中间件设计模型的实现方法
2020/07/13 Javascript
js利用iframe实现选项卡效果
2020/08/09 Javascript
[01:27]DOTA2电竞之夜 今夜共饮庆功酒
2014/08/02 DOTA
[57:22]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第五场
2018/04/10 DOTA
[02:08]什么藏在DOTA2 TI9“小紫本”里?斧王历险记告诉你!
2019/05/17 DOTA
[57:36]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第三场 2月1日
2021/03/11 DOTA
Python标准库之循环器(itertools)介绍
2014/11/25 Python
Python实现数据库编程方法详解
2015/06/09 Python
如何在python字符串中输入纯粹的{}
2018/08/22 Python
python贪吃蛇游戏代码
2020/04/18 Python
python装饰器常见使用方法分析
2019/06/26 Python
python实现静态web服务器
2019/09/03 Python
在keras中实现查看其训练loss值
2020/06/16 Python
python中pyqtgraph知识点总结
2021/01/26 Python
全球地下的服装和态度:Slam Jam
2018/02/04 全球购物
英国玛莎百货美国官网:Marks & Spencer美国
2018/11/06 全球购物
在校生钳工实习自我鉴定
2013/09/19 职场文书
我的老师教学反思
2014/05/01 职场文书
党员领导干部承诺书
2014/05/28 职场文书
Ajax实现局部刷新的方法实例
2021/03/31 Javascript