因此,根据您发送的号码,此功能可以获取一个字母字符或多个字母。我想反转此功能,以便在发送该字符时收到一个数字。我已经能够用单个字母实现这一点。
我已经创建了一个字母id系统,方法是首先生成一个数字,然后使用该id作为索引将其转换为字母。但是我想做的是在使用了26个字符后,我希望它继续使用AA,AB,AC等。
编辑:我想澄清一下,我的想法是转换器应该扩展到A系列以外。因此在AZ之后到达BA BB .. BZ,CA CB CC等。我还想得到回报的是数字而不是字母。原始函数给我字母,现在我需要将其取反以找回我在上一个函数中发送的数字
function convertNumberToId (number) {
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
if (number < alphabet.length) {
return alphabet[number];
} else {
return (
convertNumberToId(Math.floor(number / alphabet.length) - 1)
+
convertNumberToId(number % alphabet.length)
);
}
}
如果数字不超过数组的长度,则在if语句中您会收到回信,但是一旦输入,您将得到AA,AB,AC等。现在,我想扭转这种情况。
到目前为止,这是我实现的目标:
function convertIdToNumber(id){
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
if($.inArray(id , alphabet) !== -1){
return alphabet.indexOf(id);
}
else{
}
}
相关分类