the caesar cypher project

This commit is contained in:
vfonsah 2020-09-06 23:49:26 +01:00
parent b1f81c30b2
commit 980018577a
1 changed files with 21 additions and 3 deletions

View File

@ -1,5 +1,23 @@
const caesar = function() {
const caesar = function (clearStr, key) {
let strArr = clearStr.split("");
for (let i = 0; i < strArr.length; i++) {
const charCode = strArr[i].charCodeAt();
if (
(charCode >= 65 && charCode <= 90) ||
(charCode >= 97 && charCode <= 122)
) {
strArr[i] = String.fromCharCode(
mod(charCode + key - codeSet(charCode), 26) + codeSet(charCode)
);
}
}
// return matchArr
return strArr.join("");
};
module.exports = caesar
const codeSet = (code) => (code < 97 ? 65 : 97);
const mod = (n, m) => ((n % m) + m) % m;
module.exports = caesar;