JSFiddle - React, Tailwind, and code Playground
by David Thomas
JavaScript
function keyMap(start, stop) {
var startFrom, stopAt, o = {};
switch (typeof start) {
case 'string':
startFrom = start.charCodeAt(0);
break;
case 'number':
startFrom = start;
break;
default:
return '';
}
switch (typeof stop) {
case 'string':
stopAt = stop.charCodeAt(0);
break;
case 'number':
stopAt = stop;
break;
default:
stopAt = start.length > 1 && typeof start === 'string' ? start.charCodeAt(1) : startFrom;
break;
}
for (var i = startFrom, len = stopAt + 1; i < len; i++) {
o[String.fromCharCode(i)] = i;
}
return o;
}
var map = keyMap('a','z');
console.log(map, map.a, map.b, map.c /* ...and so on... */);