關於對節點的訪問順序,有兩種,深度優先遍歷和廣度有限遍歷,具體遍歷順序如下圖:
為了清晰每一步的實現,我把檔案的目錄結構用圖來表示,並表明順序:
下面就開始我們的**咯,注釋寫的比較詳細,這裡就不羅嗦了:
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...