SOLUTION: Caesars Cipher - freeCodeCamp (JavaScript Algorithms and Data Structures)

 Caesars 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 which takes a ROT13 encoded string as input and returns a decoded string.

All letters will be uppercase. Do not transform any non-alphabetic character (i.e. spaces, punctuation), but do pass them on.


SOLUTION: 


function rot13(str) {

  return str.split("").map(item => {

    let a = item.replace(/[A-Z]/g,(item.charCodeAt(0) + 13) > 90 ? String.fromCharCode(item.charCodeAt(0) + 13 - 90 + 64): String.fromCharCode(item.charCodeAt(0) + 13))
    return a
  }).join("");
}

rot13("SERR PBQR PNZC");
console.log(rot13("SERR PBQR PNZC"));


Caesars Cipher - JavaScript Algorithms and Data Structures


Click here to go to the original link of the question.


Post a Comment

Previous Post Next Post