求大神指点js生成树结构
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求大神指点js生成树结构相关的知识,希望对你有一定的参考价值。
const input = [
'a/b',
'a/b',
'a/c',
'a/d',
'a/d/e',
'h/b',
'h/c',
];
const output = [
name: 'a',
children: [
name: 'b' ,
name: 'c' ,
name: 'd',
children: [
name: 'e'
]
]
,
name: 'h',
children: [
name: 'b' ,
name: 'c'
]
]
如上实现由input到output
function tree(list)
const result = [];
for (let value of list)
// 排除空字符串的情况
if (!value)
continue;
const values = value.split('/');
// 查找树结构的当前级别是否已经存在,不存在则创建对象,并添加入列表。
let current = result.find(item => item.name === values[0]);
if (current === void 0)
current = ;
result.push(current);
for (let i = 0, length = values.length; i < length; i++)
current.name = values[i];
if (i < length - 1)
// 如果还有下一级内容,判断当前是否有 children,没有则构建.
if (current.children === void 0)
current.children = [];
// 查找下一级对象,为下一遍遍历构建对象
let nextCurrent = current.children.find(item => item.name === values[i + 1]);
if (nextCurrent === void 0)
nextCurrent = ;
current.children.push(nextCurrent);
current = nextCurrent;
return result;
============ 假装分割线 ===========
以上代码是生成树的函数,调用 tree 函数并传入你的 input 数据,返回值就是生成的树。百科没找到传代码的地方了。 参考技术A 目的:由字符串生成树结构,树结构包含在一个div内,该div能独立放置。禁止treeview控件,禁止ActiveX,XP上自带的IE6顺利浏览就可以了。
字符串命名规则:
1.符号“&”为节点分隔符
2.无须根节点,从第一子节点开始遍历,用字符串+数字表示不同的节点,其中字符串是任意的,字符串最后一位不可以包含数字。第i层子节点就有i个数字,同一父节点下的子结点最后一位用数字从小到大标识
3.字符串string113表示的是第一子节点下面的第一个子节点下面的第三个子节点
4.字符串书写顺序为:越是前面的数字越小越优先。如:string123 string1221 string2134 则次序因为 string1221&string123&string2134
Cubase怎么添加loops 求大神指点
有很多方法能实现你的想法,但鉴于你可能是不太会用cubase,最简单的方法就是另开一轨,把需要做效果的音频剪切到新轨,然后加载需要的插件实现效果。另声相可以在音轨条左下角的+号点开,下拉菜单选pan,点开旁边的"R"键,使线变绿,然后在线上设置点,调整位置。往上是右。往下是左。 参考技术A 采样LOOP什么的直接拖拽就行啊追问
我是说比如电脑上有一个单独的loop 怎么把它弄到音轨里
追答Cubase 左上角 菜单-导入-音频文件 找到Loop所在位置 选中 打开
追问我试试
本回答被提问者采纳以上是关于求大神指点js生成树结构的主要内容,如果未能解决你的问题,请参考以下文章