Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

For loop for object?

I have the next code in javascript. I deleted some unnecessary items because it went to long.

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
        }
    }
}

Now i want to get al data in the options.commands object. But everything what i try don't work. This is what i am trying:

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

Please help me.

like image 219
Timo Avatar asked Aug 17 '26 07:08

Timo


2 Answers

.length is a property of arrays, what you have is an object.

Try:

for(var key in options.commands) {
    alert(options.commands[key].cmd);
}
like image 154
sorpigal Avatar answered Aug 19 '26 21:08

sorpigal


Have a look at how-to-loop-through-javascript-object-literal-with-objects-as-members.

Essentially:

for (var key in options.commands) {
   alert(  options.commands[key].enabled );
   ...
}
like image 22
Justin Ethier Avatar answered Aug 19 '26 21:08

Justin Ethier



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!