Да, это нормальная практика при обработке вложенных структур, например:
const topics = [
{
topicName: 'Hello there',
messages: [{...}, {...}]
},
{
topicName: 'Need help',
messages: [{...}, {...}]
},
]
const msgIdx= topics.map(topic => topic.messages.map(msg => msg.id));
Только учтите, что структура останется вложенной
[ [], [], ...]
Если нужно получить плоский список, одним мапом не обойтись:
const msgIdx= topics.map(topic => topic.messages.map(msg => msg.id))
.reduce((acc, idList) => acc.concat(idList), [])