Lo que pensé que iba a ser bastante simple se está convirtiendo en un dolor de cabeza durante días. Puedo hacer que funcione codificando pero no puedo hacer que funcione en un bucle. Esto es lo que tengo codificado.
let vt = [{animal:"dog"},{color:"green"},{tail:"curly"}]; vt[0]["children"]={pupname:"harry",pupcolor:"red"} vt[0]["children"]["children"]={pupname:"joe",pupcolor:"brown"} vt[0]["children"]["children"]["children"]={pupname:"itchy",pupcolor:"black"} console.log(JSON.stringify(vt));Esto me dará lo que quiero.
[{ "animal": "dog", "children": { "pupname": "harry", "pupcolor": "red", "children": { "pupname": "joe", "pupcolor": "brown", "children": { "pupname": "itchy", "pupcolor": "black" } } } }, { "color": "green" }, { "tail": "curly" }]Esta es una versión simplificada y podría haber muchos objetos en la matriz. No puedo hacer que funcione en un bucle. El número cada vez mayor de claves para niños es mi problema, o tal vez estoy muy lejos de todos modos. Cualquier sugerencia es bienvenida
usted puede hacer eso:
const vt = [ { animal: 'dog' }, { color: 'green' }, { tail: 'curly' } ]; [ { pupname:'harry', pupcolor:'red' } , { pupname:'joe', pupcolor:'brown' } , { pupname:'itchy', pupcolor:'black' } ].reduce((a,c)=>a.children = c, vt[0]); console.log( vt ); .as-console-wrapper {max-height: 100%!important;top:0 }