将数字转换为26个字符以外的字母 [英] Convert numbers to letters beyond the 26 character alphabet
本文介绍了将数字转换为26个字符以外的字母的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在为可映射的电子表格导出功能创建一些客户端功能。
I'm creating some client side functions for a mappable spreadsheet export feature.
我正在使用jQuery来管理列的排序顺序,但是每列按照Excel电子表格订购,即abcd e ...... xyz aa ab ac ad等等。
I'm using jQuery to manage the sort order of the columns, but each column is ordered like an Excel spreadsheet i.e. a b c d e......x y z aa ab ac ad etc etc
如何生成一个数字作为字母?我应该定义一个固定的值数组吗?或者有一种动态的方式来生成这个吗?
How can I generate a number as a letter? Should I define a fixed array of values? Or is there a dynamic way to generate this?
推荐答案
我认为你正在寻找类似这样的东西
I think you're looking for something like this
function colName(n) {
var ordA = 'a'.charCodeAt(0);
var ordZ = 'z'.charCodeAt(0);
var len = ordZ - ordA + 1;
var s = "";
while(n >= 0) {
s = String.fromCharCode(n % len + ordA) + s;
n = Math.floor(n / len) - 1;
}
return s;
}
// Example:
for(n = 0; n < 125; n++)
document.write(n + ":" + colName(n) + "<br>");
这篇关于将数字转换为26个字符以外的字母的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文