El código actual funciona sin problemas. Me gusta saber si hay una forma más limpia o mejor de eliminar objetos de la raíz de mi matriz si se encuentra un valor en algún lugar de un objeto anidado. quiero quitar el objeto
const baseArray = [ { title: 'Test folder', UUID: '54F5E250-1C5F-49CC-A963-5B7FD8884E48', Children: [ { title: 'nothing', UUID: 123, }, ] }, { title: 'nothing', UUID: 123, }, ] const currArray = baseArray const removeRootUUID = (baseArray, currArray) => { const delInRoot = uuidRef => { baseArray.forEach((obj, i) => { if (obj.UUID === uuidRef) { baseArray.splice(i, 1); } }); }; for (const obj of currArray) { if (obj.Children) { obj.Children.forEach(node => { delInRoot(node.UUID); }); removeRootUUID(baseArray, obj.Children); } } };la salida que estoy buscando está debajo. (porque UUID se encuentra en la raíz y en otro objeto anidado)
{ title: 'Test folder', UUID: '54F5E250-1C5F-49CC-A963-5B7FD8884E48', Children: [ { title: 'nothing', UUID: 123, }, ], }