JS中Caesars Cipher的例項

mug發表於2021-09-09

讓上帝的歸上帝,凱撒的歸凱撒。

下面我們來介紹風靡全球的凱撒密碼Caesar cipher,又叫移位密碼。

移位密碼也就是密碼中的字母會按照指定的數量來做移位。

一個常見的案例就是ROT13密碼,字母會移位13個位置。由'A' 'N', 'B' 'O',以此類推。

寫一個ROT13函式,實現輸入加密字串,輸出解密字串。

所有的字母都是大寫,不要轉化任何非字母形式的字元(例如:空格,標點符號),遇到這些特殊字元,跳過它們。

程式碼:

function rot13(str) { // LBH QVQ VG!
  var arr = str.toUpperCase().split('');
  var str1= [];
  for(var i=0;i=65 && num 90?String.fromCharCode(64+(num+13-90)):String.fromCharCode(num+13);
      }
    }
    str1.push(arr1.join(''));
  }
  return str1.join('');
}

// Change the inputs below to test
rot13("SERR PBQR PNZC");

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/506/viewspace-2798193/,如需轉載,請註明出處,否則將追究法律責任。

相關文章