JSON.parse(JSON.stringify
时间: 2023-08-14 13:13:51 浏览: 55
这是一个常见的 JavaScript 技巧,用于将一个 JavaScript 对象转换为字符串,然后再将字符串转换回一个新的 JavaScript 对象。这个过程被称为深拷贝,可以用于创建一个对象的副本,而不是引用原始对象。
在这个过程中,首先使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串表示,然后使用 JSON.parse() 方法将字符串解析为一个新的 JavaScript 对象。
示例代码如下所示:
```javascript
const originalObject = { name: 'John', age: 30 };
const stringifiedObject = JSON.stringify(originalObject);
const copiedObject = JSON.parse(stringifiedObject);
console.log(originalObject); // { name: 'John', age: 30 }
console.log(copiedObject); // { name: 'John', age: 30 }
```
通过这个技巧,我们可以创建一个原始对象的完全独立副本。请注意,如果原始对象含有函数、循环引用等特殊情况,可能会导致转换过程出现问题。
相关问题
json.stringify和json.parse
`JSON.stringify()` 是 JavaScript 中的一个函数,用于将 JavaScript 对象转换为 JSON 字符串。它接受三个参数:要转换为字符串的对象、一个可选的过滤器函数和一个可选的缩进。
例如:
```
let obj = {name: "John", age: 30, city: "New York"};
let jsonString = JSON.stringify(obj);
console.log(jsonString); // {"name":"John","age":30,"city":"New York"}
```
`JSON.parse()` 是 JavaScript 中的一个函数,用于将 JSON 字符串转换为 JavaScript 对象。它接受两个参数:要转换的 JSON 字符串和一个可选的转换函数。
例如:
```
let jsonString = '{"name":"John", "age":30, "city":"New York"}';
let obj = JSON.parse(jsonString);
console.log(obj.name); // "John"
```
JSON.stringify和JSON.parse
JSON.stringify是一个用于将JavaScript对象转换为JSON字符串的方法。它接受一个JavaScript对象作为参数,并返回一个表示该对象的JSON字符串。
JSON.parse是一个用于将JSON字符串解析为JavaScript对象的方法。它接受一个JSON字符串作为参数,并返回一个表示该JSON字符串对应的JavaScript对象。
这两个方法是常用于在JavaScript中处理JSON数据的工具。JSON.stringify可以用于将JavaScript对象序列化为字符串,而JSON.parse可以用于将JSON字符串解析为可操作的JavaScript对象。这在数据交换和存储时非常有用,特别是在与服务器进行通信或在前后端之间传递数据时。