Convert integer into its character equivalent, where 0 => a, 1 => b, etc
Assuming you want lower case letters:
var chr = String.fromCharCode(97 + n); // where n is 0, 1, 2 ...
97 is the ASCII code for lower case 'a'. If you want uppercase letters, replace 97 with 65 (uppercase 'A'). Note that if n > 25
, you will get out of the range of letters.
Will be more portable in case of extending to other alphabets:
char='abcdefghijklmnopqrstuvwxyz'[code]
or, to be more compatible (with our beloved IE):
char='abcdefghijklmnopqrstuvwxyz'.charAt(code);
If you don't mind getting multi-character strings back, you can support arbitrary positive indices:
function idOf(i) { return (i >= 26 ? idOf((i / 26 >> 0) - 1) : '') + 'abcdefghijklmnopqrstuvwxyz'[i % 26 >> 0];}idOf(0) // aidOf(1) // bidOf(25) // zidOf(26) // aaidOf(27) // abidOf(701) // zzidOf(702) // aaaidOf(703) // aab
(Not thoroughly tested for precision errors :)