作者:Flyingis
一般在JavaScript中可以调用Object类的构造函数来创建对象:
并且可以将对象附加到其他对象上,类似于C++中的对象数组,例如,某大学里拥有多个专业,每个专业都有一位主任和多名讲师组成,在JavaScript中可以这样来描述:
可以看出,当对主任和讲师有更详细的描述时,这样一层层的代码给人感觉非常繁琐,许多代码都是重复编写,不但增加了代码量,并且还很枯燥。
JSON是一种轻量级的数据交换格式,它的优点就是便于读写,可以将JavaScript中的对象及其赋值写成键值对的形式,例如上面代码通过JSON来描述可以写成:
这样来描述整个对象的内部结构显得更为简洁、清晰,除了声明属性和对象外,还可以使用JSON创建的对象定义成员函数。当然,不论采用何种方法来描述,目的都是为了更高效直观的编写JavaScript代码,我们可以使用JSON定义一个对象,然后使用JavaScript添加属性,也可以使用JSON来扩展JavaScript所定义的对象,创建任意复杂的对象层次。
一般在JavaScript中可以调用Object类的构造函数来创建对象:
var
obj
=
new
Object();
并且可以将对象附加到其他对象上,类似于C++中的对象数组,例如,某大学里拥有多个专业,每个专业都有一位主任和多名讲师组成,在JavaScript中可以这样来描述:
var
university
=
new
Object();
university.specialty = new Array();
university.specialty[ 0 ] = new Object();
// 该专业的主任是Sam
university.specialty[ 0 ].director.name = " Sam " ;
university.specialty[ 0 ].director.age = 40 ;
// 该专业的两位讲师分别是Tom和Jerry
university.specialty[ 0 ].instructor = new Array();
var tom = new Object();
tom.name = " Tom " ;
tom.age = 32 ;
university.specialty[ 0 ].instructor[ 0 ] = tom;
var jerry = new Object();
jerry.name = " Jerry " ;
jerry.age = " 35 " ;
university.specialty[ 0 ].instructor[ 1 ] = jerry;
university.specialty = new Array();
university.specialty[ 0 ] = new Object();
// 该专业的主任是Sam
university.specialty[ 0 ].director.name = " Sam " ;
university.specialty[ 0 ].director.age = 40 ;
// 该专业的两位讲师分别是Tom和Jerry
university.specialty[ 0 ].instructor = new Array();
var tom = new Object();
tom.name = " Tom " ;
tom.age = 32 ;
university.specialty[ 0 ].instructor[ 0 ] = tom;
var jerry = new Object();
jerry.name = " Jerry " ;
jerry.age = " 35 " ;
university.specialty[ 0 ].instructor[ 1 ] = jerry;
可以看出,当对主任和讲师有更详细的描述时,这样一层层的代码给人感觉非常繁琐,许多代码都是重复编写,不但增加了代码量,并且还很枯燥。
JSON是一种轻量级的数据交换格式,它的优点就是便于读写,可以将JavaScript中的对象及其赋值写成键值对的形式,例如上面代码通过JSON来描述可以写成:
var
university
=
{
specialty : [
{
director : [
name : "Sam",
age : 40
],
instructor : [
{name : "Tom", age : 32}
{name : "Jerry", age : 35}
]
}
]
}
specialty : [
{
director : [
name : "Sam",
age : 40
],
instructor : [
{name : "Tom", age : 32}
{name : "Jerry", age : 35}
]
}
]
}
这样来描述整个对象的内部结构显得更为简洁、清晰,除了声明属性和对象外,还可以使用JSON创建的对象定义成员函数。当然,不论采用何种方法来描述,目的都是为了更高效直观的编写JavaScript代码,我们可以使用JSON定义一个对象,然后使用JavaScript添加属性,也可以使用JSON来扩展JavaScript所定义的对象,创建任意复杂的对象层次。