我正在尝试使用html中类型为'file'的输入标签加载文件
<input type="file">
然后使用这个文件,我试图分割每一行并将返回的数组返回到名为lines
的数组中。
我尝试过移动console.log(lines),但是只有当console.log在.onload函数内部时,我才能获得正确的结果。
var input = document.querySelector('input[type="file"]')
input.addEventListener('change', function (e) {
let lines = new Array();
console.log(input.files)
const reader = new FileReader()
reader.onload = function () {
lines = reader.result.split('\n');
}
reader.readAsText(input.files[0]);
console.log(lines)
})
如何确保lines
数组中已插入正确的分割线,以便随后可以在整体功能的其他部分使用lines
数组
答案 0 :(得分:1)
只需尝试在数组中推送拆分值。它可能对您有用。
var input = document.querySelector('input[type="file"]')
let lines = [];
input.addEventListener('change', function (e) {
const reader = new FileReader()
reader.onload = function () {
lines.push(reader.result.split('\n'));
}
reader.readAsText(input.files[0]);
console.log(lines);
})
<input type="file">