JS實現excel表頭字母和數字的轉換
阿新 • • 發佈:2019-01-24
將數字轉換成字母,這裡使用的是遞迴的思路
var stringArray = [];
function numToString(numm){
stringArray.length = 0;
var numToStringAction = function(nnum){
var num = nnum - 1;
var a = parseInt(num / 26);
var b = num % 26;
stringArray.push(String.fromCharCode(64 + parseInt(b+1)));
if (a>0){
numToStringAction(a);
}
}
numToStringAction(numm);
return stringArray.reverse().join("");
}
將字母轉換成數字,這裡使用進位制轉換的思路
function stringTonum(a){
var str=a.toLowerCase().split("");
var num=0;
var al = str.length;
var getCharNumber = function(charx) {
return charx.charCodeAt() -96;
};
var numout = 0;
var charnum = 0;
for(var i = 0; i < al; i++){
charnum = getCharNumber(str[i]);
numout += charnum * Math.pow(26, al-i-1);
};
return numout;
}