"default_tabs" : [ 
    {
        "value" : "Ice"
    }, 
    {
        "value" : "Gold"
    } 
 ]

Quiero asignar estos valores a otra matriz de tal manera que debería verse a continuación

selected_values :  [{"values" : { "Ice" : "Edit","Gold" : "Edit" },"role" : "Admin"}]

Para esto preparé lo siguiente,

 default_tabs.forEach(function(i,v){
       selected_values.push('values':v)
    }) 

Sé que estoy equivocado, ¿alguien puede ayudarme, por favor? Gracias.

1
MMR 14 ene. 2017 a las 15:12
Tu formato no es válido. No puedo decir si desea valores como una matriz o una matriz de objetos.
 – 
zfrisch
14 ene. 2017 a las 15:25

1 respuesta

La mejor respuesta

Puede iterar la matriz y agregar las propiedades al primer elemento de la propiedad de result.selected_values values.

var object = { default_tabs: [{ value: "Ice" }, { value: "Gold" }] },
    result = { selected_values: [{ values: {}, role: "Admin" }] };

object.default_tabs.forEach(function (a) {
    result.selected_values[0].values[a.value] = 'Edit';
});

console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }
1
Nina Scholz 14 ene. 2017 a las 15:26
Hola Nina ... realmente impresionado con tu técnica de uso de arreglos, muchas gracias. Si puedes, sugiéreme algunos de los mejores artículos para arreglos.
 – 
MMR
14 ene. 2017 a las 15:44
1
@nlr_p, para empezar, puede echar un vistazo a la documentación de MDN sobre Matrices.
 – 
Nina Scholz
14 ene. 2017 a las 15:46
Está bien, gracias ...:)
 – 
MMR
14 ene. 2017 a las 15:46