z_xiaofei168 发表于 2013-1-29 09:16:59

浅谈JSON的两种数据结构

浅谈JSON的两种数据结构
 
JSON主要有两种数据结构:
        1、由key--value对组成的数据结构。这种数据结构在不同的语言中有不同的实现。
        例如:在javascript中是一个对象.而在java中是一种Map结构,c语言中是struct,其它的语言中可能为record、 hash table 等。 
        2、有序集合、这种数据结构在不同语言中可能有list、vertor、数组和序列等实现。
 
下面我就来研究javascript中对这两种方式的语法。
 
1、  用于创建对象的语法
       JSON语法创建对象更像一种Map结构,它是一种由key-value对组成数据结构。
 
   创建Object对象:总是以{开始以}结束,对象的每个属性名与属性值之间用英文的默冒号(:分隔,多个属性之间用英文的(,)隔开:语法格式如下:
     Student = {      Name:’z_xiaofei168’      ……      Sex:’男'} 

 
     Student = { Name:’z_xiaofei168', …… Sex:’男' }  
 
备注:
使用JSON语法创建对象时,属性不仅可是普通的字符,而且可以是任何基本数据类型,还可以是函数,数组,甚至是另外一个用JSON语法创建的对象.
 
比如:
Teacher = {       Name:’z_xiaofei168',       Student:{             Name:’xuedong’,             Sex:’男'       }      //使用JSON为teacher对象分配一个方法    toString:function(){      alert(“方法的测试…….”);      }} 

 
2、  用于创建数组的语法
 
用JSON创建数组是分常重要的.
 
       JSON创建数组以英文的中括号[开始,然后以中括号]结束.其中放入数组的元素.元素之间用英文的逗号,分开最后的不需要英文逗号。
例如:
 Arr =
 
    通过上面的讲解我理解了JSON创建Javascript对象及数组的方式,那么下面我们就来实现xml与Json之间的转换.
  

 
 
<?xml version="1.0" encoding="UTF-8"?><cities><province name="北京"><city>昌平</city><city>朝阳</city><city>海淀</city></province><province name="河北"><city>石家庄ity><city>保定</city><city>张家口</city></province></cities>  
转换成JSON
 
cities =[      province1:{            name:’河北',         city[             ’石家庄','保定',...      ]      }      province2:...] 

 
 
页: [1]
查看完整版本: 浅谈JSON的两种数据结构