Javascript 如何从数组中的外部文件加载数据
我尝试了一整天使用jquery从文件加载数据,但没有成功。 在javascript中,我将一个值数组定义为全局变量,它将用于以下函数中。变量如下所示: var Yvalue01=[7.0,6.9,9.5,14.5,18.2,21.5,25.2,26.5,23.3,18.3,13.9,9.6] 但是,我希望从包含以下内容的服务器上的文本文件加载这些值: 7.0,6.9,9.5,14.5,18.2,21.5,25.2,26.5,23.3,18.3,13.9,9.6Javascript 如何从数组中的外部文件加载数据,javascript,arrays,file,variables,Javascript,Arrays,File,Variables,我尝试了一整天使用jquery从文件加载数据,但没有成功。 在javascript中,我将一个值数组定义为全局变量,它将用于以下函数中。变量如下所示: var Yvalue01=[7.0,6.9,9.5,14.5,18.2,21.5,25.2,26.5,23.3,18.3,13.9,9.6] 但是,我希望从包含以下内容的服务器上的文本文件加载这些值: 7.0,6.9,9.5,14.5,18.2,21.5,25.2,26.5,23.3,18.3,13.9,9.6 如何在javascript(没有p
如何在javascript(没有php)中实现这一点?您可以使用XHR请求检索文件并解析它,例如
function reqListener () {
var Yvalue01 = this.responseText.split(",");//Split the response by commas
Yvalue01 = Yvalue0.map(function (el) { return parseFloat(el);});//Parse the values to make them numbers
//Do stuff with your array
}
var oReq = new XMLHttpRequest();
oReq.onload = reqListener;
oReq.open("get", "yourFile.txt", true);
oReq.send();
有关更多详细信息,请参阅MDN文档:
Jquery和其他javascript库(例如dojo)有更好的API来实现这一点
7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6
代码如下:(需要jQuery,因为它更简单)
location变量是服务器上文件的相对文件路径字符串。OP没有指定JQueryTrue的使用,但我认为它使AJAX请求更容易。我完全同意您的看法,但OP可能正在使用另一个库,或者根本不想使用任何库。
function getFile(location)
{
var result;
$.ajax(
{
type: 'GET',
async: false,
url: location,
success: function(data) {
result = data;
},
fail: function() {
result = null;
}
});
return result;
}
var values = getFile("data.txt").split(",");