JSON
文章目录
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式
一、四项基本规则
- 数据在键值对中
- 数据使用
,
分隔 {}
用来保存对象[]
用来保存数组
二、Json优缺点
优点 | 缺点 |
---|---|
数据格式简单、易读写、占用带宽小 | 必须以Unicode为字符集,受约束性强 |
支持多种语言 | 必须遵循四项基本规则,语法过于严谨 |
三、Json保存的值
保存类型 | 示例 |
---|---|
数字 | { “number”:2000 } |
对象 | {“name”:“百度”,“URL”:“www.baidu.com”} |
数组 | { “arr”:[{“name”:“Tom”},{“name”:“Julay”}] } |
字符串 | {“string”:“abcdefghijk”} |
逻辑值 | {“flag”:true} |
NULL | {“difine”:null} |
四、Json对象
4.1 对象语法
- json的对象需要在
{}
书写 - 对象中可以包含多个键值对
- 键和值之间使用
:
分隔 - 键值对与键值对之间使用
,
分隔
{"name":"Tom","age":18,"sex":"男"}
4.2 对象操作
4.2.1 访问对象的值
- 使用
.
符号访问:json_Obj.value
- 使用
[]
符号访问:json_Obj["value"]
4.2.2 对象的嵌套
browser = {
"name":"谷歌浏览器",
"charge":"free",
"website":{
"name":"百度",
"URL":"www.baidu.com"
}
}
4.2.3 对象值的修改
- 使用
.
来修改:json_Obj.name = "火狐浏览器"
- 使用
[]
来修改:json_Obj["name"] = "搜狗浏览器"
4.2.4 对象值的删除
-
使用
delete
关键字删除对象属性:delete json_Obj.name
delete json_Obj["name"]
五、Json数组
5.1 数组语法
- Json数组需要在
[]
中书写 - Json数组的值可以是JavaScript表达式
{
"arr":["aaa","bbb","ccc"]
}
5.2 数组操作
5.2.1 数组的嵌套
json_Arr = {
"arr1":[
"name":"arr1",
"arr2":["name":"arr2"]
]
}
5.2.2 数组的修改
- 使用
[]
来修改:json_Arr.arr[2] = "Tom"
5.2.3 数组的删除
- 使用
delete
来进行删除:delete json_Arr.arr[3]
六、Json函数
6.1 JSON.parse( )函数
使用该函数可以使JSON字符串转换成JavaScript对象
6.1.1函数语法
JSON.parse( text [,reviver] )
text : JSON字符串
reviver : 可选,转换结果的函数
var js_obj = JSON.parse('{"name":"Tom","age":18}');
6.2 JSON.stringify( )函数
使用该函数可以使JavaScript对象转换成JSON字符串
6.2.1 函数语法
JSON.syringify( value[,replacer[,space]])
value : JavaScript对象或数组
replacer : 可选,转换结果的函数或数组
space : 可选,文件添加缩进、空格和换行符
var arr = ["aaa","bbb","ccc"];
var json_str = JSON.stringify(arr);
选,文件添加缩进、空格和换行符
var arr = ["aaa","bbb","ccc"];
var json_str = JSON.stringify(arr);