Kuidas loopida läbi tavalise JavaScript objekti, mille liikmed on objektid?

Kuidas ma saan läbi lugeda kõik JavaScript-objekti liikmed, sealhulgas objektideks olevad väärtused.

Näiteks, kuidas ma saaksin loop läbi selle (juurdepääs "your_name" ja "your_message" igaühele)?

var validation_messages = {
    "key_1": {
        "your_name": "jimmy",
        "your_msg": "hello world"
    },
    "key_2": {
        "your_name": "billy",
        "your_msg": "foo equals bar"
    }
}
Lahendus
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]);
    }
}
Kommentaarid (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);
}
Kommentaarid (0)
for(var key in validation_messages){
    for(var subkey in validation_messages[key]){
        //code here
        //subkey being value, key being 'yourname' / 'yourmsg'
    }
}
Kommentaarid (0)