Estoy creando una aplicación que usa sequelize y el valor JSON devuelto es:
[ { key: 'PREFIX', value: 'm.' }, { key: 'OWNER_ID', value: '14901414891498' }, { key: 'GUILD_ID', value: '525219058950109' } ]Pero quiero saber si es posible reorganizar este objeto json a algo como esto:
{ prefix: 'm.', owner_id: '330406276972412928', guild_id: '525219058950109'} Busqué algunos métodos de manipulación de objetos JSON con Javascript, pero ninguno se ajustaba a mis necesidades.
Puede usar Object.fromEntries y transformar los objetos en tuplas [key, value] .
const data = [ { key: 'PREFIX', value: 'm.' }, { key: 'OWNER_ID', value: '14901414891498' }, { key: 'GUILD_ID', value: '525219058950109' } ] const newData = Object.fromEntries(data.map(({ key, value }) => [key.toLowerCase(), value])) console.log(newData)Usando Array#reduce :
const data = [ { key: 'PREFIX', value: 'm.' }, { key: 'OWNER_ID', value: '14901414891498' }, { key: 'GUILD_ID', value: '525219058950109' } ]; const obj = data.reduce((acc, {key, value}) => ({ ...acc, [key.toLowerCase()]: value }), {}); console.log(obj);