<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
/*
id: 子節點的pid,
pid: 0代表頂級數據 父id相當於子數據的pid
label: 信息
children: 數組 子節點數據
*/
data = [{
id: 1,
label: '一中隊',
children: [{
id: 4,
label: '一支隊',
children: [
{
id: 9,
label: '張三'
}, {
id: 10,
label: '李四',
children:[
{
id: 110,
label: '李110四',
}
]
}
]
}]
}, {
id: 6,
label: '四中隊',
}]
var returnedItem = []; //定義一個空數組
function find(arr, id) {
//利用foreach循環遍歷
arr.forEach((item) => {
//判斷遞歸結束條件
if (item.id == id) {
// 存儲數據到空數組
returnedItem=item.children;
} else if (item.children != null) //判斷chlidren是否有數據
{
//遞歸調用
find(item.children, id);
}
})
return returnedItem;
}
var item = new find(data, 10);
console.log(item)
</script>
</body>
</html>