Javascript 返回全局数组元素
我试图简单地打印出一个从csv文件导入的学生的全局数组列表。我已经做了足够多的故障排除,知道数据正在导入并读取良好。常见的答案似乎是不需要全局数组的“var”声明,但这对我也不起作用 这是我的声明:Javascript 返回全局数组元素,javascript,arrays,global,Javascript,Arrays,Global,我试图简单地打印出一个从csv文件导入的学生的全局数组列表。我已经做了足够多的故障排除,知道数据正在导入并读取良好。常见的答案似乎是不需要全局数组的“var”声明,但这对我也不起作用 这是我的声明: //Student array list from csv import studentList = []; //window.studentList = []; 这是我初始化阵列的地方: function processData(csv){ let allLines = csv.split(
//Student array list from csv import
studentList = [];
//window.studentList = [];
这是我初始化阵列的地方:
function processData(csv){
let allLines = csv.split(/\r\n|\n/);
for(let i = 0; i < allLines.length; i++)
{
let row = allLines[i].split(",");
let col = [];
for(let j = 0; j < row.length; j++)
{
col.push(row[j]);
}
if(col == " ") break;
studentList.push(col);
}
//when I alert the array element by element the data is being read from within this function
for(let i =0; i < studentList.length; i++)
{
alert(studentList[i]);
}
}
问题似乎是您试图从函数
getStudent[i]
获取索引。尝试将该行更改为alert(getStudent(i))代码>带括号
编辑
我用这段代码进行了测试,它对我来说很好
studentList = [];
studentList.push('student1');
function getStudent(index) {
return studentList[index];
}
function getStudentsDeparture(i) {
var student = getStudent(i);
alert(student);
}
getStudentsDeparture(0);
您是对的,但是当我仍然从一个单独的函数尝试时,我仍然没有定义。@Stefan您确定索引在studentList
array的范围内吗?
function getStudentsDeparture(i)
{
trip.departure = getStudent(i);
alert(trip.departure); //prints undefined
trip.destination = "123 Smith Rd, Maddingley VIC 3340";
console.log('dest is: ' + trip.destination + ' dept is: ' +
trip.departure);
}
studentList = [];
studentList.push('student1');
function getStudent(index) {
return studentList[index];
}
function getStudentsDeparture(i) {
var student = getStudent(i);
alert(student);
}
getStudentsDeparture(0);