怎麼用廣度遍歷的方法刪除乙個目錄???

2021-09-11 12:59:42 字數 739 閱讀 3693

關於對節點的訪問順序,有兩種,深度優先遍歷和廣度有限遍歷,具體遍歷順序如下圖:

為了清晰每一步的實現,我把檔案的目錄結構用圖來表示,並表明順序:

下面就開始我們的**咯,注釋寫的比較詳細,這裡就不羅嗦了:

let fs = require('fs');

let path = require('path');

function prewide(dir))

}else

})}

}prewide("a")

複製**

這樣,通過 next() 方法,利用 index+1 ,就會不斷的順著目錄找下去。。。找下去。。。 突然,找到頭了怎麼辦?報錯了。。。我們需要在它找到頭的時候阻止它繼續往下找,什麼情況下,我們知道到頭了呢?

看出來了吧?index 等於 陣列長度 的時候就找完了,那我們就阻止它繼續找,並且開始刪除工作!

在開始判斷之前,我們加一句 if(index == disarr.length) return

function next(index))

}複製**

寫乙個刪除的方法吧,還是根據索引,從陣列裡刪除咯!

function rmdir(index)else

})}else

rmdir(index-1)})}

})}複製**

如果覺得還可以,請點贊鼓勵一下,謝謝!

怎麼去遍歷乙個物件 ?

今天再讀js高階,再次認識了for in語句,for in語句是一種精準的迭代語句,可以用來列舉物件的屬性 上面已經提到了for in語句了,所以它是和一種方法 const obj for let key in obj 其中key是 id,name,age 而boj key 就是對應的值第二種 用 ...

Java ArrayList遍歷時刪除乙個元素

我們知道arraylist的底層是用陣列實現的,如果你刪除了其中乙個元素,那麼後邊的元素都會向前移動。所以在遍歷時如果刪除元素,就要小心了。第一種方法,用陣列下標進行遍歷,如果需要刪除元素,我們從後向前遍歷,這樣不論有沒有元素刪除,我們都不會遺漏未被遍歷的元素。第二種方法,我們使用迭代器。itera...

用PHP怎麼刪除某目錄下指定的乙個檔案

舉個tp框架的例子 user m message a user where id id select url server document root admin public a 0 url unlink url user delete id php中刪除檔案有乙個系統函式 unlink stri...