2017-05-19 54 views
-2

我没有收到任何错误。当你看看console.log()的输出时,第一个给出了数组,当我打开第二个时,它说数组是空的!这几乎就像它从未设置。我正在检查的阵列是.axes
我可以直接访问它,但当我展开对象时,我看不到它。 这是我生命中最重要的事情,宇宙试图阻止我。Javascript未设置阵列

for(i=0; i<$.count; i+=1){ 
    h = chain[i]; 
    h.axes = [ chain[0] ]; 
    if (i==3){ 
     console.log('Direct_AXES',h.axes); 
     console.log('Direct_H',h); 
    } 

    chain[0].dna.push(h); 

} 
+0

你有更多关于数组'chain'内容的信息吗? – rageandqq

+0

请提供'链'对象的详细信息,h对象h.axes,从代码 –

+0

不太清楚,这意味着链[3]为空 – derp

回答

0

只要我能帮到你。这像一个魅力。

var chain = [{},{},{},{},{}]; 
for(i=0;i<chain.length;i+=1){ 

    h = chain[i]; 
    h.axes = [ chain[0] ]; 

    if (i==3){ 
     console.log('Direct_AXES',h.axes); 
     console.log('Direct_H',h); 
    } 

    // chain[0].dna.push(h); 

} 

我添加了一个包含四个空对象的数组(所以代码会以某种方式运行)。我评论了循环的最后一行,因为很明显我会遇到错误。 一切工作正常。因此,这里的结论是,您没有发布的部分存在错误,因为所有内容都按预期工作。 两个日志都会打印数组和包含轴数组的整个对象h。