Skip to content

JSON 数据格式

1. 什么是 JSON

JSON(JavaScript Object Notation,JavaScript 对象表示法)是一种轻量级的数据交换格式。JSON 的设计目的是使数据的存储和交换变得简单。它是一种纯文本格式,并且是完全独立于语言的,但是它使用了类似于 C 语言家族(包括 C、C++、C#、Java、JavaScript、Perl、Python 等)的习惯。这使得它对于许多编程环境来说是理想的数据交换语言。

JSON 数据格式由两种结构支持:

  • 键值对的集合
  • 值的有序列表

一个简单的 JSON 对象示例:

json
{
  "name": "John",
  "age": 30,
  "isStudent": false,
  "courses": ["Math", "English"]
}

2. JSON 与 JavaScript 对象的关系

JSON 是 JavaScript 对象的字符串表示,因此 JavaScript 程序可以轻松地使用 JSON 数据格式。虽然 JSON 的语法来自 JavaScript 对象表示法,但它仍然是独立于语言的。这意味着其他编程语言也可以解析 JSON 数据,将其转换为该语言的对象,或者将对象序列化为 JSON 数据格式。

3. 如何解析 JSON 数据

在 JavaScript 中,可以使用 JSON.parse() 方法将 JSON 字符串转换为 JavaScript 对象。同样地,可以使用 JSON.stringify() 方法将 JavaScript 对象转换为 JSON 字符串。

解析 JSON 示例:

javascript
var jsonString =
  '{"name":"John","age":30,"isStudent":false,"courses":["Math","English"]}';
var jsonObject = JSON.parse(jsonString);
console.log(jsonObject.name); // 输出:John

将 JavaScript 对象转换为 JSON 字符串示例:

javascript
var person = {
  name: "John",
  age: 30,
  isStudent: false,
  courses: ["Math", "English"],
};
var jsonString = JSON.stringify(person);
console.log(jsonString);
// 输出:'{"name":"John","age":30,"isStudent":false,"courses":["Math","English"]}'

这些方法为处理 JSON 数据提供了方便,使得在客户端和服务器之间以及不同的编程环境之间交换数据变得简单。