let arr =山东省/济南市/历下区 山东省/济南市/章丘区 转为带key的树结构
时间: 2023-08-01 07:08:54 浏览: 51
要将给定的字符串数组转换为带有键值的树结构,你可以使用以下代码:
```javascript
function convertToTree(arr) {
const tree = {};
arr.forEach((item, index) => {
const nodes = item.split('/');
let currentNode = tree;
nodes.forEach(node => {
if (!currentNode[node]) {
currentNode[node] = {};
}
currentNode = currentNode[node];
});
// 为当前节点添加键值
currentNode.key = index + 1;
});
return tree;
}
const arr = `山东省/济南市/历下区
山东省/济南市/章丘区`.split('\n');
const tree = convertToTree(arr);
console.log(tree);
```
运行以上代码,你会得到以下输出:
```json
{
"山东省": {
"济南市": {
"历下区": {
"key": 1
},
"章丘区": {
"key": 2
}
}
}
}
```
每个节点都带有一个名为 "key" 的属性,其值为该节点在数组中的索引加 1。这样,你就得到了带有键值的树结构。