web-dev-qa-db-ja.com

nodejsでのファイルパスとファイルの削除

list_file_to_delete内の3つのファイルを削除したいのですが、「ここに3つのファイルへのパス」に置くパスがわかりません。すべてを削除するにはfor loop/for in/forEach関数が必要ですか、それともvar string = "...a1.jpg, ...a2.jpg,...a3.jpg"のような3つのパスを持つ文字列が必要ですか?前もって感謝します

delete.jsファイル内

var list_file_to_delete = ["/images/a1.jpg", "/images/a2.jpg", "/images/a3.jpg"]
fs.unlink(path to three files here, function(err) {console.log("success")})

これはmyappディレクトリです

 myapp
      /app
          /js
             delete.js
      /public
             /images
                    a1.jpg
                    a2.jpg
                    a3.jpg
      server.js
11
user3044147

fs.unlinkは単一のファイルを取るため、各要素のリンクを解除します。

list_of_files.forEach(function(filename) {
  fs.unlink(filename);
});

または、順次であるが非同期の削除が必要な場合は、次のES5コードを使用できます。

(function next(err, list) {
  if (err) {
    return console.error("error in next()", err);
  }
  if (list.length === 0) {
    return;
  }
  var filename = list.splice(0,1)[0];
  fs.unlink(filename, function(err, result) {
    next(err, list);
  });
}(null, list_of_files.slice()));