JS中Caesars Cipher的例項
讓上帝的歸上帝,凱撒的歸凱撒。
下面我們來介紹風靡全球的凱撒密碼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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JS中排序的用法和例項JS排序
- JS 建立例項物件的四種模式JS物件模式
- js圖片切換例項JS
- 如何區分例項化網格中的每個例項
- Vue.js自定義指令的用法與例項Vue.js
- jquery.idTabs.min.js選項卡程式碼例項jQueryJS
- 使用原生js實現選項卡功能例項教程JS
- Vue.js 2.0中$on與$emit如何使用之例項講解Vue.jsMIT
- JS 預編譯程式碼例項分析JS編譯
- python例項方法中self的作用Python
- Linux 中 ss 命令的使用例項Linux
- Linux 中的 JQ 命令使用例項Linux
- Linux中ip命令的使用例項Linux
- Linux中的basename命令使用例項Linux
- php例項化物件的例項方法PHP物件
- 原生js使用物件導向的方法開發選項卡例項教程JS物件
- longing載入中例項
- Linux中head命令例項Linux
- 例項:使用puppeteer headless方式抓取JS網頁JS網頁
- js Abba逆向前瞻正則匹配例項JS
- Echarts中太陽圖(Sunburst)的例項Echarts
- python中類的建立和例項化Python
- vue例項中watch屬性的使用Vue
- Python中的if、while、for 語法及例項PythonWhile
- Linux中printf命令使用例項Linux
- 遞迴中Return例項分析遞迴
- JS例項學習筆記——w3cschoolJS筆記
- JS函式,物件,例項方法,物件方法理解JS函式物件
- Vue.js編輯文字--菜鳥教程例項Vue.js
- python中time庫的例項使用方法Python
- 在例項中呼叫 Invoke 型別的類型別
- Java中建立泛型型別的例項Java泛型型別
- Linux系統中的basename命令使用例項Linux
- Spring中Bean的例項化詳細流程SpringBean
- 分享一個Laravel中的管道的使用例項Laravel
- Js 的事件迴圈(Event Loop)機制以及例項講解JS事件OOP
- Activiti的流程例項【ProcessInstance】與執行例項【Execution】
- JS中的單例模式及單例模式原型類的實現JS單例模式原型