【发布时间】:2012-09-23 19:44:21
【问题描述】:
在 JavaScript 中,我想在 JavaScript 中实现一个编号方案,以便 1 是 A,2 是 B,...。26 是 Z,27 是 AA,28 是 AB .....
为此,代码如下:
function convertor(n){
var x = n-1,
baseCharCode = "A".charCodeAt(0);
var arr = x.toString(26).split(''),
len = arr.length;
return arr.map(function(val,i){
val = parseInt(val,26);
if( (i === 0) && ( len > 1)){
val = val-1;
}
return String.fromCharCode(baseCharCode + val);
}).join('');
}
它似乎工作正常,但有什么优化它的想法或其他实现方式吗?
【问题讨论】:
-
您面临什么问题或非最优性?
标签: javascript algorithm character-encoding type-conversion