参考资料

  1. json语法格式简介功能
  2. Json转Excel/CSV格式有哪些
  3. JSON结构组
  4. Json在线压缩转义有哪些
  5. JSON五种基本句型简介
  6. JSON数据类型详解:基本类型与复合类型全面解析
  7. 如何解析 JSON 数据?
  8. XML和Json在线互转有哪些

JSON 常用方法简介

  1. JSON.parse()

    • text:要解析的 JSON 字符串。

    • reviver(可选):转换结果的函数。

    • 功能:将 JSON 字符串解析为 JavaScript 对象。

    • 参数

    • 示例

      const jsonString = '{"name": "John", "age": 30}';
      const obj = JSON.parse(jsonString);
      console.log(obj.name); // 输出: John
  2. JSON.stringify()

    • value:要转换的 JavaScript 对象。

    • replacer(可选):转换结果的函数或数组。

    • space(可选):缩进用的空格数或字符串。

    • 功能:将 JavaScript 对象转换为 JSON 字符串。

    • 参数

    • 示例

      const obj = {name: "John", age: 30};
      const jsonString = JSON.stringify(obj);
      console.log(jsonString); // 输出: {"name":"John","age":30}
  3. JSON.parse() 使用 reviver

    • 功能:在解析时对结果进行转换。

    • 示例

      const jsonString = '{"name": "John", "age": 30}';
      const obj = JSON.parse(jsonString, (key, value) => {
        if (key === "age") return value + 1;
        return value;
      });
      console.log(obj.age); // 输出: 31
  4. JSON.stringify() 使用 replacer

    • 功能:在转换时过滤或转换属性。

    • 示例

      const obj = {name: "John", age: 30, password: "123"};
      const jsonString = JSON.stringify(obj, ["name", "age"]);
      console.log(jsonString); // 输出: {"name":"John","age":30}
  5. JSON.stringify() 使用 space

    • 功能:格式化输出的 JSON 字符串。

    • 示例

      const obj = {name: "John", age: 30};
      const jsonString = JSON.stringify(obj, null, 2);
      console.log(jsonString);
      // 输出:
      // {
      //   "name": "John",
      //   "age": 30
      // }

示例内容解析

  • JSON.parse():将字符串 '{"name": "John", "age": 30}' 解析为对象 {name: "John", age: 30}

  • JSON.stringify():将对象 {name: "John", age: 30} 转换为字符串 '{"name":"John","age":30}'

  • reviver:在解析时将 age 的值加 1。

  • replacer:只保留 nameage 属性。

  • space:使用 2 个空格缩进格式化输出。