Tengo un bloque de código muy simple:
function toObj(i){ return { i: i }; } numObj=s=>s.map(toObj)Cuando paso una matriz de números a numObj, espero que la clave y el valor coincidan con el argumento que se pasó. Por ejemplo, esperaría el siguiente resultado:
numObj([1, 2, 3, 4]) => [{1: 1}, {2: 2}, {3: 3}, {4: 4}]en cambio, obtengo esto:
numObj([1, 2, 3, 4]) => [{i: 1}, {i: 2}, {i: 3}, {i: 4}]¿Cómo puedo configurar la clave del objeto devuelto para que sea el argumento que se pasó?
Use nombres de propiedad calculados para crear la clave a partir de un valor:
const toObj = i => ({ [i]: i }) const numObj = arr => arr.map(toObj) const result = numObj([1, 2, 3, 4]) console.log(result)