omo iterar objetos / propriedades internas em um obje

Eu tenho um objeto que possui objetos e propriedades internos definidos assim:

var obj = {obj1 : { "prop1" : "nothing", "prop2" : "prop"},
        obj2 : {"prop1" : "nothing", "prop2" : "prop"},
        pr1 : "message",
        pr2 : "mess"
};

Normalmente, para iterar todas as propriedades de um objeto, ofor .. in loop pode fazer o truque

for (property in obj){
    if (obj.hasOwnProperty(property)){
        console.log(property + "   " + obj[property]);
    }
}

o console exibido:

obj1 [object Object]
obj12 [object Object]
pr1 message
pr2 mess

No entanto, como iterar os objetos internos obj1, obj2) e suas próprias propriedades prop1,prop2)?

questionAnswers(4)

yourAnswerToTheQuestion