Вы можете взять Generator
и вернуть все найденные значения объекта и его вложенных объектов.
Этот подход основывается на языковом порядке объектов.
function* values(o) {
if (o && typeof o === 'object') for (let v of Object.values(o)) yield* values(v);
else yield o;
}
let filus = { male: { hat: [1], jacket: [2], pants: [3], shoes: [4], suit: [5] } },
result = [...values(filus)];
console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }