Kaip sudaryti ciklą per paprastą "JavaScript" objektą, kurio nariai yra objektai?

Kaip galiu ciklu peržiūrėti visus "JavaScript" objekto narius, įskaitant reikšmes, kurios yra objektai.

Pavyzdžiui, kaip galėčiau sudaryti ciklą per šį (prieiti prie "your_name" ir "your_message" kiekvienam iš jų)?

var validation_messages = {
    "key_1": {
        "your_name": "jimmy",
        "your_msg": "hello world"
    },
    "key_2": {
        "your_name": "billy",
        "your_msg": "foo equals bar"
    }
}
Sprendimas
for (var key in validation_messages) {
    // skip loop if the property is from prototype
    if (!validation_messages.hasOwnProperty(key)) continue;

    var obj = validation_messages[key];
    for (var prop in obj) {
        // skip loop if the property is from prototype
        if (!obj.hasOwnProperty(prop)) continue;

        // your code
        alert(prop + " = " + obj[prop]);
    }
}
Komentarai (4)
for(var k in validation_messages) {
    var o = validation_messages[k];
    do_something_with(o.your_name);
    do_something_else_with(o.your_msg);
}
Komentarai (0)
for(var key in validation_messages){
    for(var subkey in validation_messages[key]){
        //code here
        //subkey being value, key being 'yourname' / 'yourmsg'
    }
}
Komentarai (0)