Javascript增量器神秘地跳跃了价值

时间:2015-12-30 20:05:22

标签: javascript

我有通过循环运行的代码,并且有些工作是某个段的某个id的子代。所以为了帮助自己,我做了一个小功能来抓住孩子:

function GetChildTagById(par,tag,id){
    var divs = par.getElementsByTagName(tag);
    for(i=0;i<divs.length;i++){
        if(divs[i].id==id){
            return divs[i];
        }
    }
}

并做了一些工作:

var bar = new Array();
for(i=0;i<somelist.length;i++){
    var foo =GetChildTagById(group,'div',id[i]);
    DoWork(foo);
    bar[i] = foo;
}

但稍后当我尝试访问数组时,它表明这些元素不存在。当我查看日志中的数组时,它的值为0和177,两者之间没有任何值。什么可能导致这种情况?

1 个答案:

答案 0 :(得分:0)

i变量的闭包有些如何做不到预期的事情。可以通过在for循环中键入var i=0而不是i=0来解决此问题。