我的代码基本上是尝试从 .csv 文件中读取数据并将文件数据返回到数组中。下面是 $("#filename").change() 函数部分:
$("#filename").change(function(e) {
var ext = $("input#filename").val().split(".").pop().toLowerCase();
if($.inArray(ext, ["csv"]) == -1) {
alert('Upload CSV');
return false;
}
if (e.target.files != undefined) {
var reader = new FileReader();
reader.onload = function(e) {
var csvval=e.target.result.split("\n");
var path0 = [];
for (var j=0; j<csvval.length; j++) {
var csvvalue=csvval[j].split(",");
if (csvvalue[1] === "TN04G0628" && csvvalue[2] !== "0") {
var ptr = {lat:parseFloat(csvvalue[2]), lng:parseFloat(csvvalue[3])};
path0.push(ptr);
}
}
for (var p=0; p<path0.length; p++) {
console.log(path0[p]);
}
};
reader.readAsText(e.target.files.item(0));
}
return false;
});
我的问题是如何在这个函数的末尾返回 path0 数组。我尝试了很多位置来放置return path0
函数。但是,所有这些试验要么返回一个空数组,要么返回一个未定义的数组。我觉得这是一个相对基本的问题,但对我来说很难,因为我是 JS 新手。提前致谢!