无法读取对象属性

时间:2015-11-03 16:08:52

标签: javascript

我有这个对象结构(Chrome控制台输出):

true

这个3对象包含在一个名为org.apache.catalina.session.StandardSessionFacade的对象中,响应对象包含要在我的调度程序中插入的所有数据(但这并不重要)。
现在每个对象都有这个属性:

0:Object
1:Object
2:Object

我有兴趣获得unavailables属性。并非所有三个对象都是valorized,事实上对象response作为索引,仅包含appointments: Array[2] unavailables: Array[1] 数据,1数组为空。

现在,对于第二个对象appointments,第一个对象全部正常工作unavailables,我执行一个条件以避免未定义的属性。最后一个对象是问题,实际上返回的数据不正确。 如果我打印对象2如下(在for之外):

the object 0

我得到了这个:object 1 as index,结果是正确的。
但是foreach返回了一个错误的值,这是我的代码:

response[2]['unavailables'][0].id_users_provider

Chrome控制台返回:

  

89   89< - 这应该是92!

有关迭代对象的其他信息:

92

我做错了什么?

1 个答案:

答案 0 :(得分:4)

您在数组键中的条件有误,将z更改为0

for(var z = 0; z < response.length; z++)
{
    if(response[z]['unavailables'][0] != undefined) // <== here
    {
         var id_operatore = response[z]['unavailables'][0].id_users_provider;
         console.log(id_operatore);
    }
}