对于对象的循环?

时间:2010-03-03 17:53:13

标签: javascript object for-loop

我在javascript中有下一个代码。我删除了一些不必要的项目,因为它很长。

var options = {
    dhcode: true,
    commands: {
        bold: {
            enabled: true,
            view: true,
            exec: true,
            cmd: 'bold',
            param: null
        },
        italic: {
            enabled: true,
            view: true,
            exec: true,
            cmd: 'italic',
            param: null
        },
        underline: {
            enabled: true,
            view: true,
            exec: true,
            cmd: 'underline',
            param: null
        }
    }
}

现在我想在options.commands对象中获取al数据。但我尝试的一切都不起作用。这就是我想要的:

for(var i=0;i<options.commands.length;i++) {
alert(options.commands[i].cmd);
}

请帮帮我。

3 个答案:

答案 0 :(得分:7)

.length是数组的属性,你拥有的是一个对象。

尝试:

for(var key in options.commands) {
    alert(options.commands[key].cmd);
}

答案 1 :(得分:2)

看看how-to-loop-through-javascript-object-literal-with-objects-as-members

本质:

for (var key in options.commands) {
   alert(  options.commands[key].enabled );
   ...
}

答案 2 :(得分:1)

for(var i in options.commands){
   alert(i); //bold, italic, underline
   alert(options.commands[i].cmd);
}