利用谷歌地图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 相关文章推荐
一些常用的JS功能函数代码
Jun 23 Javascript
jQuery1.6 使用方法二
Nov 23 Javascript
jQuery ui插件的使用方法代码实例
May 08 Javascript
JS对select控件option选项的增删改查示例代码
Oct 21 Javascript
JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
Jan 13 Javascript
如何实现移动端浏览器不显示 pc 端的广告
Oct 15 Javascript
基于JS实现类似支付宝支付密码输入框
Sep 02 Javascript
Bootstrap3 Grid system原理及应用详解
Sep 30 Javascript
Vue.2.0.5过渡效果使用技巧
Mar 16 Javascript
JS实现图片点击后出现模态框效果
May 03 Javascript
详解vue组件通信的三种方式
Jun 30 Javascript
JavaScript函数式编程(Functional Programming)纯函数用法分析
May 22 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
国产动画《伍六七》原声大碟大卖,啊哈娱乐引领音乐赋能IP的新尝试
2020/03/08 国漫
adodb与adodb_lite之比较
2006/12/31 PHP
PHP用户验证和标签推荐的简单使用
2016/10/31 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
PHP实现百度人脸识别
2019/05/06 PHP
php简单检测404页面的方法示例
2019/08/23 PHP
Laravel基础_关于view共享数据的示例讲解
2019/10/14 PHP
在IE下获取object(ActiveX)的Param的代码
2009/09/15 Javascript
Js+Flash实现访问剪切板操作
2012/11/20 Javascript
jQuery怎么解析Json字符串(Json格式/Json对象)
2013/08/09 Javascript
javascript遍历控件实例详细解析
2014/01/10 Javascript
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
省市选择的简单实现(基于zepto.js)
2016/06/21 Javascript
Vue.js每天必学之方法与事件处理器
2016/09/06 Javascript
详解javascript事件绑定使用方法
2016/10/20 Javascript
js实现漫天星星效果
2017/01/19 Javascript
JavaScript 点击触发复制功能实例详解
2018/11/02 Javascript
详解Vue This$Store总结
2018/12/17 Javascript
javaScript实现一个队列的方法
2020/07/14 Javascript
js实现表格数据搜索
2020/08/09 Javascript
使用IPython来操作Docker容器的入门指引
2015/04/08 Python
Pandas DataFrame数据的更改、插入新增的列和行的方法
2019/06/25 Python
Python 字符串类型列表转换成真正列表类型过程解析
2019/08/26 Python
tensorflow 限制显存大小的实现
2020/02/03 Python
关于tf.matmul() 和tf.multiply() 的区别说明
2020/06/18 Python
python3 googletrans超时报错问题及翻译工具优化方案 附源码
2020/12/23 Python
利用纯CSS3实现tab选项卡切换示例代码
2016/09/21 HTML / CSS
英国知名小木屋定制网站:Tiger Sheds
2020/03/06 全球购物
生产副总岗位职责
2013/11/28 职场文书
银行求职自荐信
2014/06/30 职场文书
国家奖学金获奖感言
2014/08/16 职场文书
2014员工聘用协议书(最新版)
2014/11/24 职场文书
2014年单位工作总结范文
2014/11/27 职场文书
2015年个人自我剖析材料
2014/12/29 职场文书
html5表单的required属性使用
2021/07/07 HTML / CSS
我去timi了,一起去timi是什么意思?
2022/04/13 杂记