Мне нужно получить доступ и вернуть все глубоко вложенные ключи в объекте и вернуть их на основе ключа.
Например, у меня есть
const chatSettings = {
name: {
questions: {
question: 'What\'s your name?',
fields: [
{
field: 'textinput',
type: 'text',
key: 'firstname',
label: 'First name'
},
{
field: 'textinput',
type: 'text',
key: 'lastname',
label: 'Last name'
},
]
}
},
email: {
questions: {
question: 'Okay. {{username}}. Now type your email addess',
fields: [
{
field: 'textinput',
type: 'email',
key: 'email',
label: 'Email'
}
]
}
}
}
И мне нужно что-то вроде getAllValuesForKey(chatSettings, 'key')
, что бы вернуть ['firstname', 'lastname', 'email']
Есть какие-нибудь идеи, как сделать это быстрым способом, учитывая при этом, что некоторые из этих объектов могут даже не иметь этого ключа?