1. JSON的由来
在目前的开发中,JSON是一种非常重要的数据格式,它并不是编程语言,而是一种可以在服务器和客户端之间传输的数据格式。
JSON的全称是JavaScript Object Notation(JavaScript对象符号)
其他的传输格式:
- XML:在早期的网络传输中主要是使用XML来进行数据交换的,但是这种格式在解析、传输等各方面都弱于JSON,所以目前已经很
少在被使用了; - Protobuf:另外一个在网络传输中目前已经越来越多使用的传输格式是protobuf,但是直到2021年的3.x版本才支持JavaScript,所以目前在前端使用的较少;
JSON的使用场景
- 网络数据的传输JSON数据;
- 项目的某些配置文件;
- 非关系型数据库(NoSQL)将json作为存储格式;
2. JSON基本语法
- 简单值:数字(Number)、字符串(String,不支持单引号)、布尔类型(Boolean)、null类型;
- 对象值:由key、value组成,key是字符串类型,并且必须添加双引号,值可以是简单值、对象值、数组值;
- 数组值:数组的值可以是简单值、对象值、数组值;
3. JSON序列化
将JavaScript中的复杂类型转化成JSON格式的字符串
- stringify方法:将JavaScript类型转成对应的JSON字符串;
- parse方法:解析JSON字符串,转回对应的JavaScript类型;
4. stringify方法
Stringify的参数replace
如果指定了一个 replacer 函数,则可以选择性地替换值;
如果指定的 replacer 是数组,则可选择性地仅包含数组指定的属性;
如果对象本身包含toJSON方法,那么会直接使用toJSON方法的结果:
5.parse方法
提供可选的 reviver 函数用以在返回之前对所得到的对象执行变换(操作)。