编程

JS仿Excel数字转英文字母

chenmo · 10月8日 · 2021年 · 本文共26013个字 · 预计阅读87分钟515次已读
JS仿Excel数字转英文字母

JS仿Excel数字转英文字母

前言

开发的时候遇到一个需求,其中需要使用js模拟Excel,将数字转换成Excel一样的英文字母。本质上其实就是进制转换,10进制转换成26进制。即:

1 => A

26 => Z

27 => AA

703 => AAA

正文

数字转英文字母

1) 转换结果的最后一位可以根据数字对26的求余计算得到,即:

27 对 26 求余,余数为1,转换为英文字母为A。

27 % 26 = 1 … 1 => A

703 对 26求余,余数为1,转换为英文字母为A。

703 % 26 = 27 … 1 => A

2)转换结果 – 其对26的余数 可以确定转换结果的前面部分,循环直到转换结束即可。

完整代码:

注:转换成英文时使用的是 64,而不是 65,因为想要的对应关系是 1=>A,如果使用65的话,将会变成0 => A

英文字母转数字

同理,附带上英文字母转数字的代码:

注:与上同理,此处使用64,而非65

 

0 条回应