js 樹結構篩選

2021-10-01 03:53:40 字數 780 閱讀 5271

問題描述,樹型資料,現在要做查詢,當子節點滿足條件時,返回其父節點直到其跟節點,同時也要把當前,子節點的所有孩子節點返回,最終返回的結構還是一顆樹。

**如下:

var productlist = [, ] }] }, ] }] }] }];

var productfilter = function(list, name){

const listlength = list.length;

for (let index = 0; index < listlength; index++){

/**父級滿足條件,子級全保留 */

if (list[index].name === name){

continue;

if (list[index].c.length){

productfilter(list[index].c, name);

list[index].c = list[index].c.filter(item => {

/**自己符合條件或者子級符合條件 */

if (item.name === name || item.has){

return item;

/**發現子級有滿足條件的,給父級新增標識,再次迴圈時保留父級 has:為標識字段*/

list[index].c.length && (list[index].has = true);

productfilter(productlist, 12);

console.log('欄目過濾', productlist);

JS多級樹結構寫法

效果 一 布局 div class three tree div class tree title cut span 名稱 span span 編碼 span span 資料域 span div div class list group li click add on div div 二 樣式 tw...

js陣列轉化成樹結構

話不多說,直接上 吧 1.首先原有的陣列資料let data 2.想要轉換成的資料型別let treedata 3實現轉換的步驟function arraytotree data 3.第一步轉換,建立id和這個元素的鍵值關係,方便一步找到這個元素 比如我想要找到id為1的元素,就需要去遍歷陣列,這樣...

繪製樹結構

樹的表示方法有雙親表示法 孩子表示法 雙親孩子表示法 孩子兄弟表示法,具體請參考其中前三種基於陣列,最後一種基於鍊錶。我定義的數節點資料結構為 typedef struct treenode treenode,ptreenode 也就是孩子兄弟表示法,附加乙個指向父節點的指標。參考上圖,發現第乙個子...