Ajax请求/无法清空全局变量

时间:2015-06-16 18:24:27

标签: javascript jquery ajax

我是Javascript / jquery和async的新手。我在这个论坛上看了很多。 但我找不到解决问题的方法。

我从数据记录器获取JS文件(logger.js),如:

ab[cd++]="data1"
ab[cd++]="data2"
ab[cd++]="data3"
...

我尝试在移动应用中加载此文件。

var ab = [];
var cd = 0;

with an ajax call:
    $.get("logger.js", function() {
        alert(ab.length); //3  works fine for the first request 
    });
....
ab.length = 0; //doesnt work.
第二个请求ab.length上的

是6, 第三个请求ab.length是9,依此类推。

空的地方在哪里?

1 个答案:

答案 0 :(得分:0)

您应该将ab重新定义为空数组:

ab = [];

请注意,您正在执行ASYNC调用,因此请确保在回调函数中重新定义ab变量(我的猜测,我不知道您在哪里使用它):

$.get("logger.js", function() {
    //do something with ab here and then redefine it.
    ab = [];
});