Javascript读取文本文件并将值附加到数组中
我在用函数填充JavaScript数组时遇到问题 我有一些使用JavaScript的图表软件。我可以将自己的值直接输入数组,以创建所需的图表,如下所示:Javascript读取文本文件并将值附加到数组中,javascript,arrays,Javascript,Arrays,我在用函数填充JavaScript数组时遇到问题 我有一些使用JavaScript的图表软件。我可以将自己的值直接输入数组,以创建所需的图表,如下所示: var data_array=[[0,170],[0,185],[0,179]] 数组中的第一个值对应于样本号e、g、0,第二个值对应于高度,例如170、185等。 这是可行的,但我最终会有一个包含数千个价值观的庞大列表。高度值将存储在文本文件中。每个样本将有一个不同的文件。文本文件将包含由行分隔的值的简单列表 我需要我的程序做的是打开一个文
var data_array=[[0,170],[0,185],[0,179]]
数组中的第一个值对应于样本号e、g、0,第二个值对应于高度,例如170、185等。
这是可行的,但我最终会有一个包含数千个价值观的庞大列表。高度值将存储在文本文件中。每个样本将有一个不同的文件。文本文件将包含由行分隔的值的简单列表
我需要我的程序做的是打开一个文本文件,提取值,然后将它们附加到数据数组中。到目前为止,我有:
$.get('sample0.txt', function(data, data_array){
var lines=data.split('\n');
for (var i=0; i<lines.length-1;i++){
var item=lines[i];
data_array.push([0,item]);
}
return data_array
}
这不起作用,尽管我知道它正确地从文本文件中提取了值。我不担心样本号,因为我可以为每个文件设置样本号。我的问题是如何填充数组并使该数组存在于函数之外
我通常用PHP编写代码,很抱歉我的JavaScript知识非常基础
// set this somewhere outside of the $.get callback.
// no need to pass it in as it will be available in that scope.
var data_array = [];
$.get('sample0.txt', function(data) {
var lines=data.split('\n');
for (var i=0; i<lines.length;i++){
var item=lines[i];
data_array.push([0,item]); // modify data_array here
}
// no need to return it
});
下面是一个非常简化的测试:
另外,请注意for循环中lines.length后面的no-1,除非您的文件以不想读取的空行结尾。如果我正确理解您的问题,您只需将数据数组声明在请求函数的范围之外。另外,你的循环是不正确的。它应该很棒!您可能会感兴趣的是阅读javascript中的作用域。谷歌上有很多内容-
var data_array = [];
$.get('sample0.txt', function(data){
var lines=data.split('\n');
for (var i=0; i<lines.length;i++){
var item=lines[i];
data_array.push([0,item]);
}
}