🗂 JSON 笔记
JSON (JavaScript Object Notation,JavaScript 对象表示法)是一个特殊格式的字符串:
- 被任意的语言所识别,并且可以转换为任意语言中的对象;
- JSON 存储和交换文本信息,类似 XML,比 XML 更小、更快、更易解析;
JSON 与 JavaScript 中的对象的格式一样,区别在于,JSON 中的字符串中的属性名必须使用 “”
(双引号) 包裹,其他的语法与 JavaScript 一致;
# JSON 分类
# 对象 {}
var obj = {
"name": "name",
"age": 3,
"gender": "male"
};
var jsonObjStr = '{
"name": "name",
"age": 3,
"gender": "male"
}';
console.log(typeof jsonObjStr); // string
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 数组 []
var jsonArrStr = '[1,2,3,"hello", true]';
console.log(typeof jsonArrStr); // string
1
2
2
# JSON 用法
# 允许值
在 JSON 中允许的值:
- 字符串
- 数值
- 布尔值
null
- 对象
- 数组
// json对象可以包含json数组
var obj1 = '{"arr":[1,2,3]}';
// json数组可以包含json对象
var obj2 = '[{
"name": "name1",
"age": 3,
"gender": "male"
},{
"name": "name2",
"age": 3,
"gender": "male"
}]';
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 转换
JSON 与 JavaScript 的转换 :
使用 JSON.parse()
将 JSON 字符串转换为 JavaScript 中的对象,使用时需要一个 JSON 字符串作为参数,会讲字符串转换为 JavaScript 的对象并返回:
var jsonObj = JSON.parse(jsonObjStr);
console.log(typeof jsonObj); // object
var jsonArr = JSON.parse(jsonArrStr);
console.log(typeof jsonArr); // object
1
2
3
4
5
2
3
4
5
使用 JSON.stringify()
将 JavaScript 对象转换为 JSON 字符串,使用时需要一个 JavaScript 对象作为参数,会返回一个 JSON 字符串:
var obj2 = {
"name": "name",
"age": 3,
"gender": "male"
};
var obj2JSONStr = JSON.stringify(obj2);
console.log(typeof obj2JSONStr); // string
console.log(obj2JSONStr);
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
编辑 (opens new window)
📢 上次更新: 2022/09/02, 10:18:16