Array.prototype.reduce()
to apply fn
to each element in arr
and combine the results into an object.el
as the key for each property and the result of fn
as the value.const mapObject = (arr, fn) => arr.reduce((acc, el, i) => { acc[el] = fn(el, i, arr); return acc; }, {});
mapObject([1, 2, 3], a => a * a); // { 1: 1, 2: 4, 3: 9 }
Subscribe to get resources directly to your inbox. You won't receive any spam! ✌️