一、Json 格式简介
1、Json 概念
Json 的英文全称为 " JavaScript Object Notation " , JavaScript 对象符号 ;
Json 是 轻量级 数据交换格式 ;
Json 中的基本元素是 字符串、数字、布尔值 或 null ,
- Json 对象中的键值对 , 可以是上述类型元素 ;
- Json 数组中的元素 , 可以是上述类型元素 ;
2、Json 功能
Json 的主要作用 是在 不同的 编程语言 中进行数据 传递 和 交互 ;
如 : Python 给 Java 传递数据 , 直接传递 Python 中的 容器变量 , Java 肯定无法解析该变量的值 , 将 Python 中的数据转为 Python 字符串以后 , 再传递给 Java , 可以实现 Python 语言和 Java 语言之间的数据交互操作 ;
同理 Java 给 Python 传递数据时 , 可以将 Java 数据转为 Json 字符串 , 然后传递给 Python 语言 ;
3、Json 格式 - 对象 / 数组 格式
Json 的 基本格式 主要有 对象 和 数组 两种形式 ,
- Json 对象格式 : Json 对象是在 大括号 中的键值对 , 键 和 值 之间 使用冒号隔开 , 每个 键值对 之间 使用 逗号隔开 ;
{
"name": "John",
"age": 30,
"city": "New York"
}
- Json 数组格式 : Json 数组 在 中括号 中存储 , 每个数组元素之间使用逗号隔开 ;
[
"apple",
"banana",
"orange"
]
Json 对象对应着 Python 中的字典 , Json 数组对应着 Python 中的列表 , 上述对应可无缝衔接转换 ;
4、Json 格式 - 对象 / 数组 嵌套格式
Json 对象中的 键 和 值 可以是 对象 或 数组 ;
Json 数组中的元素 , 可以是 对象 或 数组 ;
下面的 Json 数据 是一个 Json 对象 ,
- “hobbies” 键对应的值是一个数组 , 数组的元素是字符串 ;
- “address” 键对应的值是一个对象 , 对象中是键值对 ;
{
"name": "John",
"hobbies": [
"reading",
"traveling"
],
"address": {
"street": "123 Main St",
"city": "Anytown",
"state": "CA",
"zip": "12345"
}
}
5、Json 特点
Json 可以在不同的平台和编程语言之间进行数据交换和通信 , 有以下特点 :
- 简单易读 : JSON格式简单,易于阅读和编写,也易于机器解析和生成 ;
- 跨平台兼容 : JSON可以在不同的操作系统、编程语言和平台之间进行数据交换,具有良好的跨平台兼容性 ;
- 不依赖特定编程语言 : JSON是一种独立于编程语言的格式,可以在不同的编程语言之间进行数据交换和通信 ;
- 易于处理 : JSON数据可以直接在HTTP请求和响应中传输,可以在Web应用程序中进行数据交换和通信 ;