/**
* Converts a spreadsheet column letter to a number. eg. A -> 1
*
* @param {String} str - (required) The spreadsheet column letter to convert to a number.
*
* @returns {(Number|undefined)} The column number or undefined.
*/
function convertLetterToNumber(str) {
if ((typeof str === "string" || str instanceof String) && /^[a-zA-Z]+$/.test(str)) {
str = str.toUpperCase();
let out = 0,
len = str.length;
for (pos = 0; pos < len; pos++) {
out += (str.charCodeAt(pos) - 64) * Math.pow(26, len - pos - 1);
}
return out;
} else {
return undefined;
}
}
convertLetterToNumber("A"); // 1
convertLetterToNumber("b"); // 2
convertLetterToNumber("Ba"); // 53
convertLetterToNumber("dE"); // 109
convertLetterToNumber("ZZZZ"); // 475254
convertLetterToNumber("A"); // 1
convertLetterToNumber("b"); // 2
convertLetterToNumber("Ba"); // 53
convertLetterToNumber("dE"); // 109
convertLetterToNumber("ZZZZ"); // 475254
var value = 10;
document.write((value + 9).toString(36).toUpperCase());
str = 'z'
n = (str == str.toLowerCase()) ? 96 : 64
result = str.charCodeAt(0) - n
console.log(result);