这让我发疯了。我也无法通过 Firebug 逐步解决。有人可以解释一下这里发生了什么吗?
基本上我有一个传入的文本文件,其中每一行都包含一个管道分隔的记录。我将它们拆分为一个字符串数组,以供以后在自动完成文本框中使用。代码如下:
<script type="text/javascript">
$(function () {
var rawData = new Array();
$.get("/sample.txt",
function (data) {
var raw = data.split('\n');
for (var i = 0; i < raw.length; i++) {
rawData.push(raw[i].split('|'));
};
alert(rawData); // 1st sanity check
}
);
alert(rawData); // 2nd sanity check
alert(rawData); // 3rd sanity check
出于某种原因,第一次健全性检查工作正常 - 它显示了我所期望的所有数据。第二个显示 rawData 为空......但第三个再次显示所有数据。删除第 1 次健全性检查不会影响第 2 次和第 3 次。
这怎么可能?为什么会这样?这真让我抓狂。