在Javascript中生成分层的JSON数据可以通过以下步骤实现:
var jsonData = {};
function generateJSON(jsonObj, data) {
// 遍历当前层级的数据
for (var i = 0; i < data.length; i++) {
var item = data[i];
// 创建一个新的JSON对象,用于存储当前数据项的属性
var newItem = {};
// 遍历当前数据项的属性
for (var key in item) {
if (item.hasOwnProperty(key)) {
// 将属性添加到新的JSON对象中
newItem[key] = item[key];
}
}
// 如果当前数据项有子级数据,则递归调用该函数生成子级JSON数据
if (item.children && item.children.length > 0) {
newItem.children = {};
generateJSON(newItem.children, item.children);
}
// 将当前数据项添加到当前层级的JSON对象中
jsonObj[i] = newItem;
}
}
var data = [
{
id: 1,
name: 'A',
children: [
{
id: 2,
name: 'B',
children: [
{
id: 3,
name: 'C'
},
{
id: 4,
name: 'D'
}
]
},
{
id: 5,
name: 'E'
}
]
},
{
id: 6,
name: 'F'
}
];
generateJSON(jsonData, data);
最终生成的分层JSON数据将存储在jsonData
对象中。你可以根据需要对该对象进行进一步处理或使用。
这种生成分层JSON数据的方法适用于任意层级的数据结构,可以根据实际情况进行调整和扩展。
领取专属 10元无门槛券
手把手带您无忧上云