JavaScript中JSON解析核心是JSON.parse()和JSON.stringify(),前者将JSON字符串转为对象,后者将对象序列化为JSON字符串,二者因轻量、通用、安全及浏览器原生支持成为数据交换事实标准。
JavaScript 中的 JSON 解析很简单,核心就是 JSON.parse() 和 JSON.stringify() 这两个方法。它之所以在数据交换中至关重要,是因为它轻量、通用、语言无关,且浏览器原生支持,成了前后端通信的事实标准。
后端返回的通常是 JSON 格式的字符串(比如通过 fetch 或 XMLHttpRequest 获取),必须解析才能操作数据。
const data = JSON.parse('{"name":"张三","age":28}'); → 得到一个普通对象前端要向后端发送结构化数据时,通常需要把它序列化为 JSON 字符串。
const str = JSON.stringify({name: "李四", hobbies: ["读书", "跑步"]});
等无法被正确序列化,会被忽略或转为 null不是因为功能最强,而是因为它刚好平衡了可读性、简洁性和兼容性。
你几乎每天都在用,只是可能没意识到。
fetch('/api/user').then(res => res.json()).then(data => {...}) —— res.json() 内部就是封装了 JSON.parse()
localStorage.setItem('user', JSON.stringify(obj)),读取时再 JSON.parse()
不复杂但容易忽略。掌握好 parse 和 stringify 的边界与限制,就能避开大多数数据转换类 bug。