假设我有一个如下所示的对象数组,该数组包含一个对象列表,该对象列表包含一个键和文档数,该键具有层次结构信息,用字符串>分隔”>,该属性的开头是父级,然后是它的孩子,依此类推。
[
{
key: 'sport',
doc_count: 2
},
{
key: 'sport>competition',
doc_count: 2
},
{
key: 'sport>competition>cricket',
doc_count: 1
},
{
key: 'sport>competition>football',
doc_count: 1
},
{
key: 'movies',
doc_count: 1
}
{
key: 'movies>english',
doc_count: 1
}
]
有人可以建议我最快的方法将此数组转换为javascript中的此分层数据(请参阅下文)。>>
[
{
label: 'sport',
parent: null,
doc_count: 2,
children: [
{
label: 'competition',
parent: 'sport',
doc_count: 2,
children: [
{
label: 'cricket',
parent: 'competition',
doc_count: 1,
children: []
},
{
label: 'football',
parent: 'competition',
doc_count: 1,
children: []
}
]
}
]
},
{
label: 'movies',
parent: null,
doc_count: 1,
children: [
{
label: 'english',
parent: 'movies',
doc_count: 1,
children: []
}
]
}
]'
假设我有一个如下的对象数组,该数组包含一个对象列表,该对象列表包含一个键和文档数,该键的层次结构信息为字符串,中间用“>”分隔,...的开头。] >
我不会为您做这件事(不是出于恶意,只是因为我不是100%确信我正确理解了这个问题),但我希望能在正确的方向上为您提供重要的帮助。
问题与递归有关。如果您不知道递归,则如下所示:
我用这种方法解决了,