我将拥有大量的Windows文件"网址"在像这样的json字符串中:
{"C:\\Users\\Tyler\Desktop\\File1.jpg','C:\\Users\\Tyler\\Desktop\\Folder1\\File2.png"}
依此类推...... 我需要在网站上的某种Windows资源管理器类型的情况下组织这些文件,所以我需要组织这样的事情:
{"C:":[{"Users":[{"Tyler":[{"Desktop":[{"File1.jpg","Folder1":[{"File2.png"}]}]}]}]}]}
我需要在客户端javascript中完成此操作,jquery也可以。 感谢。
答案 0 :(得分:1)
您可能不希望在一个对象中混合使用文件和文件夹。我建议使用以下输出结构:
{"C:":{"Users":{"Tyler":{"Desktop":{"__files__":["File1.jpg"],
"Folder1":{"__files__":["File2.png"]}}}}}}
为了获得所需的输出,您可以执行以下步骤:
__files__
数组唯一棘手的部分可能是步骤2.3
所以我将提供一个示例代码:
var result = {};
var parts = ['C:', 'Users', 'Tyler'];
var root = result;
while (parts.length) {
const part = parts.shift();
root[part] = root[part] || {};
root = root[part];
}