json遍历replace
时间: 2023-08-20 14:06:11 浏览: 77
如果你想要遍历一个JSON对象并替换其中的某些值,你可以使用递归的方式来实现。以下是一个示例代码,其中使用了JavaScript的递归函数和JSON.parse()和JSON.stringify()方法:
```javascript
function replaceJsonValues(obj, searchValue, replaceValue) {
for (let key in obj) {
if (typeof obj[key] === 'object') {
replaceJsonValues(obj[key], searchValue, replaceValue);
} else if (obj[key] === searchValue) {
obj[key] = replaceValue;
}
}
return obj;
}
const jsonString = '{"name": "John", "age": 30, "city": "New York"}';
const jsonObj = JSON.parse(jsonString);
const replacedJsonObj = replaceJsonValues(jsonObj, "New York", "London");
console.log(JSON.stringify(replacedJsonObj));
// Output: {"name":"John","age":30,"city":"London"}
```
在上述示例中,我们定义了一个名为`replaceJsonValues`的递归函数,该函数遍历了JSON对象的每个属性,并检查其值是否是一个对象。如果是对象,则递归调用`replaceJsonValues`函数。如果值不是对象且等于要替换的值,则将它替换为新值。
最后,我们使用`JSON.stringify()`方法将修改后的JSON对象转换回字符串并输出它。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://img-home.csdnimg.cn/images/20250102104920.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)