[align=center]JSON基础知识[/align]
[b]1.1概述[/b]
JSON全称“JavaScript Object Notation(JavaScript对象表示法)”,起源于JavaScript的对象和数组。
JSON大部分都是用来处理JavaScript和web服务器端之间的数据交换,把后台web服务器的数据传递到前台,然后使用JavaScript进行处理,例如ajax等。
JSON支持的语言非常多,包括JavaScript、C#、PHP、Java等,这是由于JSON独立于语言的轻量级的数据交换格式,这个特点有点类似于SQL语言。
[b]1.2 JSON语法[/b]
JSON语法是 JavaScript 对象表示法语法的子集。
(1)数据在“名称/值对”中,即键值对(key-value)形式。
(2)每条数据由“逗号”分隔。
(3)“花括号”{ }保存对象。
(4)“方括号”[ ]保存数组。
[b]1.3值[/b]
“名称/值对”数据中,其名称的冒号“:”后面对应的值可以是:null、逻辑值(boolean)、数字(number)、字符串(string,在双引号""中)、数组(在方括号[]中)、对象(在花括号{}中)。
[b]1.4 JSON存储数据的方式[/b]
JSON结构包括对象和数组2种。
[b]1.4.1对象[/b]
对象结构数据,可以包含多个名称/值对。
例:
{
"name":"John",[color=green]//正确[/color]
"age":23,[color=green]//正确[/color]
"array":[1,2,3,4],[color=green]//正确[/color]
"hello world",[color=green]//错误,对象中只能包含名称/值对的形式,不能只有一个值[/color]
name:"John"[color=green]//错误,名称必须要加双引号""[/color]
}
[color=red]注意:键名必须是字符串。[/color]
[b]1.4.2数组[/b]
数组结构数据,只能包含值的形式,不能为名称/值的形式。
例:
[
null,
true, [color=green]//逻辑值Bool[/color]
123, [color=green]//数字Number[/color]
"888",[color=green]//字符串String[/color]
{"name":"alice","age":23},[color=green]//对象Object[/color]
[1,2,3,4], [color=green]//数组[/color]
"name":"John"[color=green]//错误,不能为“名称/值”的形式[/color]
]
[b]1.5普通字符串、JSON字符串和JSON对象的区别[/b]
1、普通字符串
字符串,使用单引号或双引号括起来的单个或多个字符。
2、JSON对象
JSON对象,指的是符合JSON格式要求的JavaScript对象。
例:var jsonObj = {"name":"helicopter","age":23,"gender":"男"};
3、JSON字符串
JSON字符串,指的是符合“JSON格式”的字符串。其要求是:<1>必须是字符串,<2>必须符合“JSON”格式。
例:var jsonStr = '{"name": "helicopter", "age":23, "gender": "男"}';
[b]1.1概述[/b]
JSON全称“JavaScript Object Notation(JavaScript对象表示法)”,起源于JavaScript的对象和数组。
JSON大部分都是用来处理JavaScript和web服务器端之间的数据交换,把后台web服务器的数据传递到前台,然后使用JavaScript进行处理,例如ajax等。
JSON支持的语言非常多,包括JavaScript、C#、PHP、Java等,这是由于JSON独立于语言的轻量级的数据交换格式,这个特点有点类似于SQL语言。
[b]1.2 JSON语法[/b]
JSON语法是 JavaScript 对象表示法语法的子集。
(1)数据在“名称/值对”中,即键值对(key-value)形式。
(2)每条数据由“逗号”分隔。
(3)“花括号”{ }保存对象。
(4)“方括号”[ ]保存数组。
[b]1.3值[/b]
“名称/值对”数据中,其名称的冒号“:”后面对应的值可以是:null、逻辑值(boolean)、数字(number)、字符串(string,在双引号""中)、数组(在方括号[]中)、对象(在花括号{}中)。
[b]1.4 JSON存储数据的方式[/b]
JSON结构包括对象和数组2种。
[b]1.4.1对象[/b]
对象结构数据,可以包含多个名称/值对。
例:
{
"name":"John",[color=green]//正确[/color]
"age":23,[color=green]//正确[/color]
"array":[1,2,3,4],[color=green]//正确[/color]
"hello world",[color=green]//错误,对象中只能包含名称/值对的形式,不能只有一个值[/color]
name:"John"[color=green]//错误,名称必须要加双引号""[/color]
}
[color=red]注意:键名必须是字符串。[/color]
[b]1.4.2数组[/b]
数组结构数据,只能包含值的形式,不能为名称/值的形式。
例:
[
null,
true, [color=green]//逻辑值Bool[/color]
123, [color=green]//数字Number[/color]
"888",[color=green]//字符串String[/color]
{"name":"alice","age":23},[color=green]//对象Object[/color]
[1,2,3,4], [color=green]//数组[/color]
"name":"John"[color=green]//错误,不能为“名称/值”的形式[/color]
]
[b]1.5普通字符串、JSON字符串和JSON对象的区别[/b]
1、普通字符串
字符串,使用单引号或双引号括起来的单个或多个字符。
2、JSON对象
JSON对象,指的是符合JSON格式要求的JavaScript对象。
例:var jsonObj = {"name":"helicopter","age":23,"gender":"男"};
3、JSON字符串
JSON字符串,指的是符合“JSON格式”的字符串。其要求是:<1>必须是字符串,<2>必须符合“JSON”格式。
例:var jsonStr = '{"name": "helicopter", "age":23, "gender": "男"}';