在ES6中,你可以使用递归函数来解析多层嵌套的JSON。下面是一个示例:
const nestedJSON = {
"name": "John",
"age": 30,
"address": {
"street": "123 Main St",
"city": "New York",
"country": "USA"
},
"friends": [
{
"name": "Tom",
"age": 28
},
{
"name": "Jane",
"age": 32
}
]
};
function parseNestedJSON(obj) {
for (let key in obj) {
if (typeof obj[key] === 'object') {
parseNestedJSON(obj[key]); // 递归调用函数来解析嵌套的对象
} else {
console.log(key + ': ' + obj[key]);
}
}
}
parseNestedJSON(nestedJSON);
这个例子中,parseNestedJSON
函数会遍历JSON对象的每个属性。如果属性的值是一个对象,那么函数会递归调用自身来解析嵌套的对象。如果属性的值不是一个对象,那么函数会打印出键和对应的值。
在上面的例子中,函数会打印出以下内容:
name: John
age: 30
street: 123 Main St
city: New York
country: USA
name: Tom
age: 28
name: Jane
age: 32
这样你就可以通过递归函数来解析多层嵌套的JSON了。