JSFiddle - React, Tailwind, and code Playground
by Göran Andersson
JavaScript
function tinyEncode(id) {
var chars, code, value, adder;
chars = 'abcdefghijklmnopqrstuvwxyz';
if (id <= chars.length) {
code = chars.substr(id - 1, 1);
} else {
id--;
value = chars.length;
adder = 0;
while (id >= value * (chars.length + 1) + adder) {
adder += value;
value *= chars.length;
}
code = chars.substr(Math.floor((id - adder) / value) - 1, 1);
id = (id - adder) % value;
while (value > 1) {
value = Math.floor(value / chars.length);
code += chars.substr(Math.floor(id / value), 1);
id = id % value;
}
}
return code;
}
for (var i=1 ; i<200; i++) {
$('body').append($('<div/>').text(tinyEncode(i)));
}