<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
let data = [
{ id: 1, title: '你好1', classid: 0 },
{ id: 2, title: '你好2', classid: 1 },
{ id: 3, title: '你好3', classid: 2 },
{ id: 4, title: '你好4', classid: 1 },
{ id: 5, title: '你好5', classid: 2 },
{ id: 6, title: '你好6', classid: 1 },
{ id: 7, title: '你好7', classid: 0 },
{ id: 8, title: '你好8', classid: 0 },
{ id: 9, title: '你好9', classid: 8 },
{ id: 10, title: '你好10', classid: 9 },
{ id: 11, title: '你好11', classid: 0 },
];
function recursion(items, match,level) {
let result = [];
if (items == null || items.length == 0) {
return result;
}
for (const item of items) {
if (match(item)) {
let prv='';
if(level>0){
for(let i=0;i<level;i++){
if(i==0)prv='└';
else prv+='-';
}
}
item.title=prv+item.title;
result.push(item);
var nlevel=level+1;
let childs=recursion(items,(n)=>n.classid==item.id,nlevel);
result=result.concat(childs);
}
}
return result;
}
let jieguo=recursion(data,(n)=>n.classid==0,0)
console.log(data,jieguo);
</script>
</body>
</html>
版权所有:有信心——uxinxin 我的个人网站欢迎常来!手机版(新站开启,请多多关照) 豫ICP备12017930号-1
豫公网安备 41910102000493号