JSFiddle - React, Tailwind, and code Playground
by batcave
JavaScript
const raw = {
'something.collection[0].name1': '0 name1',
'something.collection[1].name3': '0 name3',
'something.collection[0].name2': '0 name2',
'something.collection[0].name3': '0 name3',
'something.collection[1].name1': '0 name1',
'something.collection[1].name2': '0 name2',
'else.name1': '0 name1',
}
const allowed = ['something']
const filtered = Object.keys(raw)
.filter(key => key.includes('something'))
.sort()
.reduce((obj, key) => {
const collectionKey = key.split('.')[1]
obj[collectionKey] = raw[key]
return obj
}, {})
console.log(filtered);