1. 程式人生 > >模擬let的for迴圈

模擬let的for迴圈

在非同步的環境中使用var很容易就出現問題,可以用let來解決,但也可以使用一個立即執行函式來迭代做這件事情

(function itarator(i){
    if(i == files.length){
      return;
    }
    //fs.stat是一個非同步函式
    fs.stat('./test/' + files[i], function(err, stats) {
      if (stats.isDirectory()) {
        dirs.push(files[i])
      }
      //非同步函式處理完後再呼叫自己
      itarator(i+1)
    })
  })(0)