Actualmente tengo una matriz de valores de cadena: const array1 = ['string1', 'string2'];
Quiero poder usar las cadenas de esta matriz y crear una nueva matriz con objetos anidados que los usen como valores para las claves de objeto. Como esto:
const array2 = [{value: 'string1', label: 'string1'}, {value: 'string2', label: 'string2' ] ;
Intenté usar el método .reduce() y actualmente, mi código se ve así:
const arr = ['string1', 'string2']; const newArr = []; function reducer(acc, cur) { return {...acc, [cur.id]: cur}; } const reducedArr = arr.reduce(reducer, {}); newArray.push(reducedArr); Cuando registro newArray en la consola, vuelvo:
Array [{ undefined: 'string2'}]¿Cuál es la mejor manera de resolver este problema?
Cada elemento en array2 es un ping de mapa de cada elemento de array1.
const array1 = ['string1', 'string2']; const array2 = array1.map(item => ({value: item, label: item})); console.log(array2);