0
文字列からネストされたオブジェクトツリーを生成するためのヘルプを探しています。実施例1JavaScript内の文字列からツリーを生成する方法
A > B > C
オブジェクトをもたらすはずである
:
{
name: A,
children: [{
name: B,
children: [{
name: C
}],
}]
}
例2
A > B > C | A > D > E
オブジェクトにおける結果:
私はこれまで持っている{
name: A,
children: [{
name: B,
children: [{
name: C
},{
name: D,
children: [{
name: E
}],
}],
}]
}
:
問題がある、私は適切にネストを解決する方法がわからないです。
let categoryTree = {
categories: [{}]
}
const split = (string, seperator = '|', splitter = ' > ') => {
if (!string.includes(seperator)) {
let results = string.split(splitter)
for (let i = 0; i < results.length; i++) {
let lastNode = 0
if (i != 0) {
lastNode = i - 1
}
makeTree(results[i], results[lastNode], i)
}
}
console.log(categoryTree)
return categoryTree
}
const makeTree = (item, parent, i) => {
if (categoryTree.categories[parent].name === item && categoryTree.categories[parent].name) {
console.log('IN')
categoryTree.categories[parent].categories.push({
name: item,
categories: [{}]
})
} else {
categoryTree.categories.push({name: item, categories: []})
}
}
これを行うには、コードを求めていますか? –
あなたはこれまで何をしていますか? –
あなたの問題を解決するためにあなたのコードを見てください。 –