Si potrebbe fare anche in questo modo, utilizzando l'iteratore [for ... in] specifico per gli oggetti, con un filtro in caso di dati misti.

codice:
const StrutturaIDVisita = {
    "5": { "42": true, "": true },
    "66": { "69": true, "": true },
    "PAT004": { "43": true, "125": true },
    'datoString': '1234',
    'datoArray' : [1,2,3,4,5]
}

for (const key in StrutturaIDVisita) {
    if (typeof StrutturaIDVisita[key] === 'object' && !Array.isArray(StrutturaIDVisita[key])) {
        console.log(`sottoChiavi: ${Object.keys(StrutturaIDVisita[key])}`)
    }
}