制作JavaScript应用程序以合并多个文件
我计划做一个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
<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
事件的触发顺序,也就是说,您可能会以错误的顺序得到一个文件数组。你在乎这个吗?