接上一篇,省市三级联动的例子中,引入了1个QQ网站上的js文件。这个js中构造了一个地址对象,页面上我们所有的操作都跟这个对象关联。今天讨论这种对象怎么构造的问题。

前面写过一篇:浅谈Json数据格式 http://www.cnblogs.com/xiaochongchong/p/5284441.html

实际中用的比较多的是这种嵌套数据格式,obj = {"items":{"a":[1,2],"b",[3,4]}}。构造起来很灵活,使用起来很方便。今天讨论这种对象怎么构造的问题。

最外层是对象的形式,属性:值。值里面又是1个对象,这个对象的值是个数组(数组的话,保存的是类型一致的常量)。

使用所谓的混合构造模式:http://www.cnblogs.com/xiaochongchong/p/5283694.html 构造的过程就按着这个走下去可以了。

构造函数实现、访问,代码如下:

<script>
//初始化为空的构造函数
function Obj(){
this.items = {}
}
//原型上添加方法
Obj.prototype.add = function (id, iArray) {
this.items[id] = iArray;
} //new对象
var obj = new Obj();
obj.add("a",[1,2])
obj.add("b",[3,4]); //以上的构造等价于直接申明以下的变量
//obj = {"items":{"a":[1,2],"b",[3,4]}} //从obj中取东西
alert(obj.items["a"][0]);//1
alert(obj.items["b"][0]);//3 </script>

  

再谈json的更多相关文章

  1. 再谈JSON -json定义及数据类型

    再谈json 近期在项目中使用到了highcharts ,highstock做了一些统计分析.使用jQuery ajax那就不得不使用json, 可是在使用过程中也出现了非常多的疑惑,比方说,什么情况 ...

  2. 再谈js对象数据结构底层实现原理-object array map set

    如果有java基础的同学,可以回顾下<再谈Java数据结构—分析底层实现与应用注意事项>:java把内存分两种:一种是栈内存,另一种是堆内存.基本类型(即int,short,long,by ...

  3. mui初级入门教程(四)— 再谈webview,从小白变“大神”!

    文章来源:小青年原创发布时间:2016-06-05关键词:mui,html5+,webview转载需标注本文原始地址: http://zhaomenghuan.github.io/#!/blog/20 ...

  4. [转载]再谈百度:KPI、无人机,以及一个必须给父母看的案例

    [转载]再谈百度:KPI.无人机,以及一个必须给父母看的案例 发表于 2016-03-15   |   0 Comments   |   阅读次数 33 原文: 再谈百度:KPI.无人机,以及一个必须 ...

  5. Support Vector Machine (3) : 再谈泛化误差(Generalization Error)

    目录 Support Vector Machine (1) : 简单SVM原理 Support Vector Machine (2) : Sequential Minimal Optimization ...

  6. Unity教程之再谈Unity中的优化技术

    这是从 Unity教程之再谈Unity中的优化技术 这篇文章里提取出来的一部分,这篇文章让我学到了挺多可能我应该知道却还没知道的知识,写的挺好的 优化几何体   这一步主要是为了针对性能瓶颈中的”顶点 ...

  7. 浅谈HTTP中Get与Post的区别/HTTP协议与HTML表单(再谈GET与POST的区别)

    HTTP协议与HTML表单(再谈GET与POST的区别) GET方式在request-line中传送数据:POST方式在request-line及request-body中均可以传送数据. http: ...

  8. Another Look at Events(再谈Events)

    转载:http://www.qtcn.org/bbs/simple/?t31383.html Another Look at Events(再谈Events) 最近在学习Qt事件处理的时候发现一篇很不 ...

  9. C++ Primer 学习笔记_32_STL实践与分析(6) --再谈string类型(下)

    STL实践与分析 --再谈string类型(下) 四.string类型的查找操作 string类型提供了6种查找函数,每种函数以不同形式的find命名.这些操作所有返回string::size_typ ...

随机推荐

  1. VirtualBox安装增强包实现文件共享

    环境: win10 64位 Virtualbox 5.1.30 ubuntu-16.04.3-server-amd64.iso 1. 安装好ubuntu后,打开virtualbox安装路径文件夹,找到 ...

  2. PAT 1075. PAT Judge

    The ranklist of PAT is generated from the status list, which shows the scores of the submittions. Th ...

  3. Python 实现把 .cvs 文件保存为 Excel 文件

    # 导入可以把 CVS 转换为 Excel 的外部模块 import pandas as pd # 读出 csv 文件的内容 csv = pd.read_csv('Data.csv', encodin ...

  4. 【ACM】poj_2092_Grandpa is Famous_201308021920

    Grandpa is FamousTime Limit: 2000MS  Memory Limit: 30000K Total Submissions: 7256  Accepted: 3670 De ...

  5. Java-基本输入输出

    Scanner sc = new Scanner(System.in); System.out.println("Please input the path:"); String ...

  6. 在Map对象中获取属性,注意判断为空

    在Map对象中获取属性,注意判断为空 public static void main(String[] args) { Map map = new HashMap(); Integer i = (In ...

  7. HttpSession的深入分析与研究

    HTTP是无状态协议,这意味着每次client检索网页时,都要单独打开一个server连接,因此server不会记录下先前client请求的不论什么信息. 有三种方法来维持client与server的 ...

  8. JDBC中向数据库录入汉字产生乱码的解决办法

    在近期的课程设计中遇到在eclipse中向数据库中录入数据,产生的汉字乱码现象,在这里提供一条解决的方法: 只需连接地址URL中数据库名后面添加“?characterEncoding=utf-8”即可 ...

  9. 弗拉特利定律:Illumina怎样缔造基因革命

    蕾妮·瓦林特(Renee Valint)的女儿谢尔碧(Shelby)在2000年出生时.看起来虚弱无力,就如同一仅仅耷拉着的布娃娃.谢尔碧学着走路和说话,但学得很慢.错过了儿童发展的重要阶段.到4岁时 ...

  10. Linux - 常用网络命令详解netstat,scp

    ifconfig 查看生效的ip信息. [root@local ~]# ifconfig eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICA ...