hd-utils
Version:
A handy utils for modern JS developers
13 lines (12 loc) • 575 B
JavaScript
/**
* @description function returns an object with keys as the same keys and values as the stringified keys.
* @example createMirroredObject(["a", "b"]); //{ a: "a", b: "b" }
* @example createMirroredObject(["a", "b"], (key, value) => [key.toUpperCase(), value]); // { A: "a", B: "b" }
*/
export default function createMirroredObject(keysArray, transformCallback = (key, value) => [key, value]) {
return keysArray.reduce((acc, key) => {
const [newKey, newValue] = transformCallback(key, key);
acc[newKey] = newValue;
return acc;
}, {});
}