JSON定义数据的主要方式是{}和[],{}代表的是对象,[]代表的是数组;而XML则是通过<>的分层来表示信息。下面我们就分别看一下这两种不同的方式。
大家都知道,在面向对象的三层构架体系中我们通常将现实对象抽象成实体,同时看重它的属性。例如人有自己的姓名,性别,年龄,工作,喜欢的运动等信息。用JSON 来表示:
var
person
=
{
"Name":"NAME",
"Sex":"SEX",
"Age":"AGE",
"Work":[
{"1986-1989":"FirstWork","1989-1999":"SecondWork","1999-2007":"ThirdWork"},
"OtherThings"
]
}
用XML表示:
"Name":"NAME",
"Sex":"SEX",
"Age":"AGE",
"Work":[
{"1986-1989":"FirstWork","1989-1999":"SecondWork","1999-2007":"ThirdWork"},
"OtherThings"
]
}
<
Person
>
< Name > Name </ Name >
< Sex > Sex </ Sex >
< Age > Age </ Age >
< Work >
< FirstWork >
< Time > 1986-1989 </ Time >
< WorkName > FirstWork </ WorkName >
</ FirstWork >
< SecondWork >
< Time > 1989-1999 </ Time >
< WorkName > SecondWork </ WorkName >
</ SecondWork >
< ThirdWork >
< Time > 1999-2007 </ Time >
< WorkName > ThirdWork </ WorkName >
</ ThirdWork >
< OtherThings ></ OtherThings >
</ Work >
</ Person >
当然我们不能仅仅定义数据,最终的目的还是为了将数据呈现给用户,或者提取出来加以利用。JSON定义的数据可以直接通过javascript来访问,毕竟它直接就是javascript的对象。例如这里可以通过person.Name这样的方式来访问数据。XML定义的数据则可以通过DOM解析。
< Name > Name </ Name >
< Sex > Sex </ Sex >
< Age > Age </ Age >
< Work >
< FirstWork >
< Time > 1986-1989 </ Time >
< WorkName > FirstWork </ WorkName >
</ FirstWork >
< SecondWork >
< Time > 1989-1999 </ Time >
< WorkName > SecondWork </ WorkName >
</ SecondWork >
< ThirdWork >
< Time > 1999-2007 </ Time >
< WorkName > ThirdWork </ WorkName >
</ ThirdWork >
< OtherThings ></ OtherThings >
</ Work >
</ Person >