模仿百度三维地图的js数据分享


Posted in Javascript onMay 12, 2011

百度三维地图的js数据格式:mapData["sign"] ["5,158,141"]={"busStation":{"4,317,282": [{"id":"ff8080811c462eb7011d2e23d5b91083","name":"地安门站","y":579152,"x":650606}, {"id":"ff8080811c462eb7011d2e2414f31085","name":"地安门站","y":579176,"x":650750}],"4,316,283": [{"id":"ff8080811c462eb7011d2cc3d5630ef3","name":"白士站","y":580232,"x":648834}]}}

我们进行模仿,首先了解下作为关联数组的对象的概念:
var o = new Object();
o.x="Hello!";
上面我们定义了一个对象,对象的一个属性是x,这样的形式是我们常见的。JavaScript中的对象可以作为关联数组使用,因为它们能够将任意的数据值和任意的字符串关联起来。如果采用这种方式使用对象,那么要访问的对象就要采用不同的语法,即使用一个由方括号封闭起来的、包含所需属性名的字符串,使用这种语法我们可以将上面的o对象的x属性进行如下赋值:
var o = new Object();
o["x"]="Hello!"
这种方式在某些情况下是必要的,例如在你不知道属性名的情况下,就不能使用"."来存取对象的属性,但是可以使用运算符[]来命名属性,因为它的属性名是一个字符串值(该值是动态的,在运行时可以改变),而不是一个标识符(它是静态的,在程序中必须进行硬编码)。如果使用一个对象时采用的是这种方式,我们称它为关联数组。(详细参见《JavaScript权威指南(第四版)》(155页))
通过上面的描述,我们可以这样来定义一个对象:

(1)<script type="text/javascript">
var o = new Object();
var x =MapData[2];
var y = MapData[3];
o[x] = new Object();
o[x][y] = {"id":MapData[0],"icolor":MapData[1],"x":MapData[2],"y":MapData[3],"coordinate":MapData[4],"type":MapData[5],"attribute":MapData[6]};
//o[x][y]={"busStation":{"4,315,283": [{"id":"ff8080811c462eb7011d238c49a00b35","name":"西板桥公交站","y":580326,"x":646206}, //{"id":"ff8080811c462eb7011d238dc5980b38","name":"西板桥公交站","y":580686,"x":645310}, //{"id":"ff8080811c462eb7011d2391ac470b3f","name":"故宫公交车站","y":581454,"x":645606}, //{"id":"ff8080811c462eb7011d2392aea60b44","name":"故宫公交站","y":581470,"x":645690}]}};
alert(o[x][y]["id"]);
</script>
(2)我们还可以将对象的形式写成如下所示:

<script type="text/javascript">
var d ={"x":{"y":{'id':MapData[0],'icolor':MapData[1],"x":MapData[2],"y":MapData[3],"coordinate":MapData[4],"type":MapData[5],"attribute":MapData[6]}},"x1":{"y1":{"id":MapData[8],"icolor":MapData[1],"x":MapData[2],"y":MapData[3],"coordinate":MapData[4],"type":MapData[5],"attribute":MapData[6]}}}
alert(d["x"]["y"]["icolor"]);
</script>

至此,我们的js数据就和百度上相同了。

Javascript 相关文章推荐
JavaScript实现继承的4种方法总结
Oct 16 Javascript
jQuery中replaceWith()方法用法实例
Dec 25 Javascript
Javascript基础教程之if条件语句
Jan 18 Javascript
node.js程序作为服务并在windows下开机自启动(用forever)
Mar 29 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
Jun 04 Javascript
jQuery实现上传图片前预览效果功能
Aug 03 jQuery
jQuery实现表格隔行换色
Sep 01 jQuery
详解Angular Forms中自定义ngModel绑定值的方式
Dec 10 Javascript
VUE前后端学习tab写法实例
Aug 06 Javascript
JS实现随机抽取三人
Nov 06 Javascript
JavaScript实现拖拽和缩放效果
Aug 24 Javascript
JavaScript 防盗链的原理以及破解方法
Dec 29 Javascript
javascript数组去掉重复
May 12 #Javascript
javascript 弹出层组件(升级版)
May 12 #Javascript
ExtJS4 组件化编程,动态加载,面向对象,Direct
May 12 #Javascript
关于js获取radio和select的属性并控制的代码
May 12 #Javascript
js 第二代身份证号码的验证机制代码
May 12 #Javascript
基于JQuery的动态删除Table表格的行和列的代码
May 12 #Javascript
五个jQuery图片画廊插件 推荐
May 12 #Javascript
You might like
php4的session功能评述(一)
2006/10/09 PHP
NT IIS下用ODBC连接数据库
2006/10/09 PHP
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
2011/11/02 PHP
linux下实现定时执行php脚本
2015/02/13 PHP
修改WordPress中文章编辑器的样式的方法详解
2015/12/15 PHP
Zend Framework入门教程之Zend_View组件用法示例
2016/12/09 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
2017/04/01 PHP
js判断运行jsp页面的浏览器类型以及版本示例
2013/10/30 Javascript
JavaScript实现文字与图片拖拽效果的方法
2015/02/16 Javascript
laypage分页控件使用实例详解
2016/05/19 Javascript
jQuery实现遮罩层登录对话框
2016/12/29 Javascript
jQuery插件Echarts实现的双轴图效果示例【附demo源码下载】
2017/03/04 Javascript
JS利用正则表达式实现简单的密码强弱判断实例
2017/06/16 Javascript
JavaScript捕捉事件和阻止冒泡事件实例分析
2018/08/03 Javascript
jQuery实现的中英文切换功能示例
2019/01/11 jQuery
小程序实现订单倒计时功能
2019/04/23 Javascript
Vue自定义组件的四种方式示例详解
2020/02/28 Javascript
JS变量提升及函数提升实例解析
2020/09/03 Javascript
[02:18]DOTA2英雄基础教程 育母蜘蛛
2014/01/20 DOTA
[30:00]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第二场 11.28
2020/12/01 DOTA
[51:53]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第二场 1月24日
2021/03/11 DOTA
Python实现在tkinter中使用matplotlib绘制图形的方法示例
2018/01/18 Python
解决PyCharm的Python.exe已经停止工作的问题
2018/11/29 Python
PyTorch和Keras计算模型参数的例子
2020/01/02 Python
pycharm设置python文件模板信息过程图解
2020/03/10 Python
Django调用支付宝接口代码实例详解
2020/04/04 Python
python中pow函数用法及功能说明
2020/12/04 Python
英国领先的票务代理商之一:The Ticket Factory
2019/02/09 全球购物
机修工工作职责
2014/02/21 职场文书
小学开学标语
2014/07/01 职场文书
2014年数学教师工作总结
2014/12/03 职场文书
2014年优秀班主任工作总结
2014/12/16 职场文书
2015年维修工作总结
2015/04/25 职场文书
2016年小学生新年寄语
2015/08/18 职场文书
python自动统计zabbix系统监控覆盖率的示例代码
2021/04/03 Python
Python中for后接else的语法使用
2021/05/18 Python