Convert integer into its character equivalent, where 0 => a, 1 => b, etc Convert integer into its character equivalent, where 0 => a, 1 => b, etc javascript javascript

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 :)