JavaScript - Caesar cipher



One of the simplest and most widely known ciphers is a Caesar cipher, also known as a shift cipher. In a shift cipher the meanings of the letters are shifted by some set amount. A common modern use is the ROT13 cipher, where the values of the letters are shifted by 13 places. Thus 'A' ↔ 'N', 'B' ↔ 'O' and so on. Write a function that takes a ROT13 encoded string as input and returns a decoded string. All letters will be uppercase. Do not transform any non - a


//Solution Basic approach
console = { 
    log: print,
    warn: print,
    error: print
};

function rot13(str) {
    let decodeStr = ""
    for (let i = 0; i < str.length; i++) {
        let lettersCode = (str[i].charCodeAt());
        if (lettersCode >= 65 && lettersCode <= 77) {
            decodeStr += String.fromCharCode(lettersCode + 13);
        } else if (lettersCode >= 78 && lettersCode <= 90) {
            decodeStr += String.fromCharCode(lettersCode - 13);
        } else {
            decodeStr += str[i];
        }
    }
    return decodeStr;
}
console.log(rot13("SERR PBQR PNZC"));

Output:


FREE CODE CAMP