Estoy luchando con el siguiente problema de javascript. ¿Hay alguna manera de hacerlo así?
// input, based on this data, I want the output to be like below const ListValues = ["id", "name", "description"] // output const initialValues = { id: "", name: "", description: "", };Muchas gracias y buen día <3
Puede usar Object.fromEntries() y Array.map() para crear el objeto deseado a partir de la entrada.
const ListValues = ["id", "name", "description"]; const initialValues = Object.fromEntries(ListValues.map(v => [v, ''])); console.log('initialValues:', initialValues) .as-console-wrapper { max-height: 100% !important; top: 0; }También podría usar Array.reduce() para obtener el mismo resultado:
const ListValues = ["id", "name", "description"]; const initialValues = ListValues.reduce((acc, cur) => { acc[cur] = ''; return acc; }, {}) console.log('initialValues:', initialValues) .as-console-wrapper { max-height: 100% !important; top: 0; }