Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript将文件读入数组-can';我好像没办法_Javascript_Arrays_File_Parsing - Fatal编程技术网

使用Javascript将文件读入数组-can';我好像没办法

使用Javascript将文件读入数组-can';我好像没办法,javascript,arrays,file,parsing,Javascript,Arrays,File,Parsing,我有一个简单的2列csv文件,我希望我的站点能够读取并最终解析为一个数组。数据格式如下: 亚特兰大勇士队,亚特兰大勇士队 巴尔的摩金莺,巴尔的摩金莺 波士顿红袜队,波士顿红袜队 等等 该文件当前存储在与我的html文件相同的位置。我试图使用ajax请求将数据从文件拉入数组,然后进一步解析,使myArray[0][0]=“Atlanta Braves” 这是我的密码: var myArray = []; $.ajax({ type: 'GET', url: 'datafilena

我有一个简单的2列csv文件,我希望我的站点能够读取并最终解析为一个数组。数据格式如下:

亚特兰大勇士队,亚特兰大勇士队
巴尔的摩金莺,巴尔的摩金莺
波士顿红袜队,波士顿红袜队
等等

该文件当前存储在与我的html文件相同的位置。我试图使用ajax请求将数据从文件拉入数组,然后进一步解析,使myArray[0][0]=“Atlanta Braves”

这是我的密码:

var myArray = [];

$.ajax({
    type: 'GET',
    url: 'datafilename.csv',
    success: function(data){processData(data);}
});

function processData(data){
    myArray = data.split('\n');
    for (i = 0; i < myArray.length; i++){
        myArray[i] = myArray[i].split(',');
    }       
}

alert(myArray[0][0]);
var myArray=[];
$.ajax({
键入:“GET”,
url:'datafilename.csv',
成功:函数(数据){processData(数据);}
});
函数processData(数据){
myArray=data.split('\n');
对于(i=0;i

不幸的是,警报只返回“未定义”。我做错了什么?任何反馈都将不胜感激。

$。ajax
是一个异步函数。这意味着它要等到其他同步代码运行之后的某个时间才能完成。尝试添加以下内容:

function processData(data) {
    // Your existing code goes here...
    alert(myArray[0][0]);
}
这是因为
processData
仅在AJAX调用返回后运行。异步函数基本上是这样工作的:

var value = 1;
setTimeout(function() {
  value = 2; // This won't happen for about 1 second
  console.log(value); // 2
}, 1000); // Run this function in 1 second
console.log(value); // 1. This happens almost immediately, without pause

$。ajax
是一个异步函数。这意味着它要等到其他同步代码运行之后的某个时间才能完成。尝试添加以下内容:

function processData(data) {
    // Your existing code goes here...
    alert(myArray[0][0]);
}
这是因为
processData
仅在AJAX调用返回后运行。异步函数基本上是这样工作的:

var value = 1;
setTimeout(function() {
  value = 2; // This won't happen for about 1 second
  console.log(value); // 2
}, 1000); // Run this function in 1 second
console.log(value); // 1. This happens almost immediately, without pause

您不能在回调之外发出警报。您不能在回调之外发出警报。非常感谢您的出色和快速响应。这是完全有道理的,我能够按照你的建议让我的功能正常工作。干杯非常感谢您的快速回复。这是完全有道理的,我能够按照你的建议让我的功能正常工作。干杯