JSON.stringify() 和 JSON.parse() 是 JavaScript 中用于处理 JSON 数据的方法,它们的用法和区别如下:
一:JSON.stringify() 方法
将 JavaScript 对象或值转换为 JSON 字符串。它接受一个参数,即要转换的对象或值。
示例:
代码语言:javascript复制var obj = { name: 'John', age: 25 };
var jsonString = JSON.stringify(obj);
console.log(jsonString); // 输出:{"name":"John","age":25}
在上述示例中,JSON.stringify()
将 JavaScript 对象 obj
转换为 JSON 字符串 {"name":"John","age":25}
。
JSON.stringify()还可以接受第二个参数,用于指定转换过程中的过滤器、替换函数或用于控制最终生成的 JSON 字符串的缩进等选项。
二:JSON.parse() 方法
将 JSON 字符串解析为 JavaScript 对象或值。它接受一个参数,即要解析的 JSON 字符串。
示例:
代码语言:javascript复制var jsonString = '{"name":"John","age":25}';
var obj = JSON.parse(jsonString);
console.log(obj.name); // 输出:John
console.log(obj.age); // 输出:25
在上述示例中,JSON.parse()
将 JSON 字符串 {"name":"John","age":25}
解析为 JavaScript 对象 obj
。
如果 JSON 字符串无效,或者不符合 JSON 格式,解析过程将会抛出异常。
总结:
JSON.stringify() 用于将 JavaScript 对象或值转换为 JSON 字符串, JSON.parse() 用于将 JSON 字符串解析为 JavaScript 对象或值。
需要注意的是,JSON.stringify() 和 JSON.parse() 只能处理符合 JSON 格式的数据。对于自定义的函数、循环引用等特殊情况,可能需要进行额外的处理。