JSON 验证和格式化工具

实时验证和格式化您的 JSON

输入 JSON

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

JSON 的历史

JSON(JavaScript 对象表示法)最初由 Douglas Crockford 在 2000 年代初期制定。该格式基于 JavaScript 对象字面量表示法的子集,但作为一种语言无关的数据格式,其实用性导致了它的广泛采用。第一条 JSON 消息于 2001 年 4 月传输。此后,由于其简单性和易用性,JSON 已成为 Web API 的事实标准,在许多应用中取代了 XML。

什么是 JSON?

JSON 是一种轻量级的、基于文本的数据交换格式,完全独立于编程语言。尽管它源自 JavaScript,但 JSON 现在几乎可以与所有编程语言一起使用。它通过键值对和有序列表的简单表示法来表示数据,使其既可读又易于机器解析。

为什么使用 JSON?

  • 语言无关:可以与任何编程语言一起使用
  • 自描述:数据结构清晰可读
  • 轻量级:数据传输开销最小
  • 快速:易于解析和生成
  • 广泛支持:大多数现代语言都内置支持
  • Web友好:浏览器原生支持
  • 模式支持:可以通过 JSON Schema 进行验证
  • 嵌套结构:支持复杂的数据层次结构

JSON 语法

JSON 语法源自 JavaScript 对象表示法,但有一些特定的规则和限制。

基本结构

  • 对象:键值对的无序集合
  • 数组:值的有序列表

支持的数据类型

  • 字符串:Unicode 文本用双引号括起来
  • 数字:整数或浮点数
  • 布尔值:true 或 false
  • null:表示没有值
  • 对象:键值对的无序集合
  • 数组:值的有序列表

JSON 在编程语言中的支持

语言解析方法字符串化方法
JavaScriptJSON.parse()JSON.stringify()
Pythonjson.loads()json.dumps()
JavaObjectMapper.readValue()ObjectMapper.writeValueAsString()
C#JsonSerializer.Deserialize()JsonSerializer.Serialize()
Gojson.Unmarshal()json.Marshal()
PHPjson_decode()json_encode()
RubyJSON.parse()JSON.generate()
Rustserde_json::from_str()serde_json::to_string()
SwiftJSONDecoder().decode()JSONEncoder().encode()
KotlinJson.decodeFromString()Json.encodeToString()