使用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:’redarmy_chen’,
??????……
??????Sex:’男’
????}
备注:使用JSON语法创建对象时,属性不仅可是普通的字符,而且可以是任何基本数据类型,还可以是函数,数组,甚至是另外一个用JSON语法创建的对象.
比如:
???Teacher?=?{
???????Name:’redarmy’,
???????Student:{
?????????????Name:’m_j’,
?????????????Sex:’男’
???????}
??????//使用JSON为teacher对象分配一个方法
??????toString:function(){
????????alert(“方法的测试…….”);
????}
????}
2、?用于创建数组的语法
用JSON创建数组是分常重要的.
???
??JSON创建数组以英文的中括号[开始,然后以中括号]结束.其中放入数组的元素.元素之间用英文的逗号,分开最后的不需要英文逗号。
例如:
?Arr?=?[value1,value2,value3,………]
通过上面的讲解我理解了JSON创建Javascript对象及数组的方式,那么下面我们就来实现xml与Json之间的转换.
<?xml?version="1.0"?encoding="UTF-8"?>
<cities>
<province?name="北京">
<city>大兴</city>
<city>昌平</city>
<city>朝阳</city>
<city>海淀</city>
<city>东城</city>
<city>西城</city>
</province>
<province?name="河南">
<city>郑州</city>
<city>安阳</city>
<city>平顶山</city>
<city>开封</city>
<city>商丘</city>
<city>洛阳</city>
</province>
</cities>
转换成JSON
?cities?=[
????????province1:{
??????????????name:’’,
?????????city[
?????????????’商丘’,’开封’,……
???????????]
???????}
????????province2:
????]
<!--EndFragment-->