Digamos que tengo un objeto:
"changes": { "attr1" : [ "sub_attr1": false, "sub_attr2": true, ... ], "attr2" : [ "sub_attr1": false, "sub_attr2": true, ... ], ... } Quiero extraer un atributo específico del objeto de changes a uno nuevo. Digamos que quiero extraer attr1 .
"new_obj" : [ "sub_attr1": false, "sub_attr2": true, ... ]y
"changes": { "attr2" : [ "sub_attr1": false, "sub_attr2": true, ... ], ... }¿Cómo puedo lograr esto?
Algo como esto funcionará.
const extract = (obj, keyToExtract) => { const entries = Object.entries(obj); const entry = entries.find(([key, value]) => key === keyToExtract); if(entry) { delete obj[keyToExtract] return { "new_obj": entry[1] } } } extract(obj.changes, "attr1")Se changes é um objeto então você pode buscar os filhos dele assim changes.filho (objeto)
Sendo arreglo: cambios['filho'] (arreglo)