我是JavaScript的新手,这个问题可能很明显,但我无法弄清楚问题出在哪里。我正在尝试从服务器将文件读取为文本变量,如下所示:
var mytext = load1();
alert('mytext: ' + mytext);
function load1() {
var client = new XMLHttpRequest();
var text = '';
client.open('GET', 'a.txt');
client.onreadystatechange = function() {
text = '' + client.responseText;
}
client.send();
alert('text: ' + text);
return text;
}
它有效!它显示两个警报框。第二个显示文件的内容:
mytext: The fox is jumping.
但是,如果我注释掉函数内部的alert(),则第二个不会显示任何内容。
这是怎么回事?这是“可变范围”问题吗?