2017-12-18 19 views
0

我想用下面的代码,其中msg是持有两个数组传入的数据从服务器发送的数据的工作:Javascript对象属性访问,但给出了不确定的错误

console.log(msg); 
for (var i = 0; i <= msg.cues.length; i++) { 
    $("#cues").append("<div class=\"cue-item\" cueval=\"cue-" + i + "\"><h4>"+msg.cues[i].name+"</h4>"+msg.cues[i].description+"</div>"); 
} 

此代码添加所需的元素的网页,一切似乎是从浏览器窗口罚款,但在控制台中我得到下面的错误,阻止从运行的所有其他代码:

{…} 
    channels: Array [ 0, 0, 0, … ] 
    cues: […] 
    0: Object { name: "Cue 1", description: "This is a test cue" } 

TypeError: msg.cues[i] is undefined

任何想法为什么会发生这种情况,我该如何解决这个问题?

+1

的'for'说法是错误的,它应该是为'(VAR I = 0;我

回答

3

您正在遍历数组长度的一个位置。变化

for (var i = 0; i <= msg.cues.length; i++) 

for (var i = 0; i < msg.cues.length; i++) 
1

在for循环头更换<=<