JavaScript的。访问对象的嵌套属性

时间:2014-05-11 02:09:58

标签: javascript object properties

                var roominfo = {
                'red' : {
                    'idrooms' : 1,
                    'occupants' : 0,
                    'player1' : '',
                    'player2' : '',
                    'action' : 1
                },
                'green' : {
                    'idrooms' : 2,
                    'occupants' : 0,
                    'player1' : '',
                    'player2' : '',
                    'action' : 1
                },
                'blue' : {
                    'idrooms' : 3,
                    'occupants' : 0,
                    'player1' : '',
                    'player2' : '',
                    'action' : 1
                },
                'yellow' : {
                    'idrooms' : 4,
                    'occupants' : 0,
                    'player1' : '',
                    'player2' : '',
                    'action' : 1
                },
                'purple' : {
                    'idrooms' : 5,
                    'occupants' : 0,
                    'player1' : '',
                    'player2' : '',
                    'action' : 1
                },
                'cyan' : {
                    'idrooms' : 6,
                    'occupants' : 0,
                    'player1' : '',
                    'player2' : '',
                    'action' : 1
                },
            };


            console.log("logrooms...");
            //console.log(roominfo.length);
            for (var p in roominfo) {
                    console.log(p);
                if (roominfo.hasOwnProperty(p)) {
                    // do stuff
                    console.log(p.idrooms);
                    console.log(p.occupants);
                    console.log(p.player1);
                    console.log(p.player2);
                    console.log(p.action);
                }
            }

这是我的jsFiddle的链接:     http://jsfiddle.net/sepoto/66nWx/

每个房间都有一个颜色。所以我能够得到在这种情况下变成p的房间名。我还需要访问每个嵌套属性(idrooms,occupants,player1,player2,action)。在我的代码中,这些内容现在尚未定义。

如何访问嵌套属性?

谢谢...

1 个答案:

答案 0 :(得分:1)

roominfo[p].idrooms

你的'p'是roominfo的关键。像这样使用它。