制作JavaScript应用程序以合并多个文件

制作JavaScript应用程序以合并多个文件,javascript,Javascript,我计划做一个JavaScript应用程序,可以合并多个文件,目前它可以合并文本文件 <input type="file" id="files" name="files[]" multiple /> <textarea id="output"></textarea> <script> var output = []; function mergeFiles(evt) { var files = evt.target.files; fo

我计划做一个JavaScript应用程序,可以合并多个文件,目前它可以合并文本文件

 <input type="file" id="files" name="files[]" multiple />
<textarea id="output"></textarea>

<script>
var output = [];

function mergeFiles(evt) {
  var files = evt.target.files;

  for (var i = 0, f; f = files[i]; i++) {
    var reader = new FileReader();
    reader.addEventListener("load", function(e) {
      output.push(e.target.result);
      document.getElementById("output").value = output.join("\n");
    });
    reader.readAsText(f);
  }
}

document.getElementById("files").addEventListener("change", mergeFiles);

</script>

var输出=[];
函数合并文件(evt){
var files=evt.target.files;
for(var i=0,f;f=files[i];i++){
var reader=new FileReader();
reader.addEventListener(“加载”,函数(e){
输出.推送(如目标.结果);
document.getElementById(“输出”).value=output.join(“\n”);
});
reader.readAsText(f);
}
}
document.getElementById(“文件”).addEventListener(“更改”,合并文件);
我还计划使用一些正则表达式来合并html文件。
这是一个好的方法吗,我是说我的方法…

为什么要使用
(函数(theFile){…})(f)
如果你甚至没有在闭包内使用
f
?你到底在问什么?如果您希望有人对您的代码发表评论,请尝试。我会使用jquery而不是原始DOM代码。更重要的是,虽然我不知道FileReader,但我猜不能保证
load
事件的触发顺序,也就是说,您可能会以错误的顺序得到一个文件数组。你在乎这个吗?