JSON 校验完全指南:格式检查与错误修复

详细介绍 JSON 校验的方法、常见错误类型和修复技巧。掌握 JSON 格式检查,避免解析失败。

JSON 工具 2026-05-28 7 分钟

JSON 校验完全指南:格式检查与错误修复

JSON 格式错误是开发中最常见的问题之一。一个多余的逗号、缺少的引号都可能导致解析失败。本文详细介绍 JSON 校验的方法和常见错误的修复技巧。

为什么需要 JSON 校验?

1. 防止解析失败

无效的 JSON 会导致 JSON.parse() 抛出异常,影响用户体验。

2. 保证数据一致性

校验确保数据格式符合预期,避免下游处理出错。

3. API 接口质量

对外提供的 API 如果返回无效 JSON,会严重影响开发者体验。

常见 JSON 错误类型

1. 缺少引号

// ❌ 错误:键名没有引号
{ name: "张三" }

// ✅ 正确
{ "name": "张三" }

2. 多余逗号

// ❌ 错误:最后一个元素后有逗号
{ "name": "张三", "age": 28, }

// ✅ 正确
{ "name": "张三", "age": 28 }

3. 单引号代替双引号

// ❌ 错误:JSON 只允许双引号
{ 'name': '张三' }

// ✅ 正确
{ "name": "张三" }

4. 注释

// ❌ 错误:JSON 不支持注释
{
  "name": "张三" // 用户名
}

// ✅ 正确
{ "name": "张三" }

5. 未转义的特殊字符

// ❌ 错误:换行符未转义
{ "text": "第一行
第二行" }

// ✅ 正确
{ "text": "第一行\n第二行" }

JSON 校验方法

方法一:JavaScript

function isValidJSON(str) {
  try {
    JSON.parse(str);
    return true;
  } catch (e) {
    return false;
  }
}

方法二:Java

import com.fasterxml.jackson.databind.ObjectMapper;

public boolean isValidJSON(String json) {
  try {
    new ObjectMapper().readTree(json);
    return true;
  } catch (Exception e) {
    return false;
  }
}

方法三:在线工具

使用 jsjson.com JSON 校验工具 可以:

  • 实时检测 JSON 语法错误
  • 精确定位错误行号和列号
  • 提供修复建议
  • 本地处理,数据安全

JSON Schema 校验

除了语法校验,还可以使用 JSON Schema 进行语义校验:

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": { "type": "string" },
    "age": { "type": "integer", "minimum": 0 }
  },
  "required": ["name"]
}

校验最佳实践

  1. 输入校验:接收外部 JSON 时必须校验
  2. 错误提示:提供清晰的错误信息,包括位置
  3. 防御性编程:永远不要信任用户输入的 JSON
  4. 自动化测试:在 CI/CD 中加入 JSON 校验步骤

总结

JSON 校验是开发中的基础技能。掌握常见错误类型和修复方法,可以大大减少调试时间。

📚 相关文章