このチュートリアルでは、JavaScriptを使用してCaesar暗号マシンを構築する方法を示しています。 シーザー暗号は、メッセージに各文字を特定の数の場所にシフトします。
JavaScriptコードには以下が含まれます
アルファベット配列。
フォーム要素にアクセスするためのDOM操作。encrypt
を作成します
このHTMLは、シンプルなフォームを作成します。 Shift入力はデフォルトですが、調整できます。
次に、同じフォルダーでcaesar.html
を作成します:
<!DOCTYPE html> <html lang='en'> <head> <meta charset='utf-8'> <title>Caesar Cipher</title> </head> <body> <h1>Caesar Cipher</h1> <form> <label>Plaintext:</label> <textarea name='plaintext'>Top Secret</textarea><br> <label>Shift:</label> <input type='number' name='shift' value='5' min='1' max='26'> <input type='submit' value='encrypt'> </form> <h2>Output</h2> <div id='output'></div> <🎜> </body> </html>
このJavaScriptコードは、アルファベットを定義し、フォーム要素を取得し、イベントリスナーを追加してフォームの提出を処理し、CAESAR暗号を実行する
関数を含みます。関数は大文字を処理します。小文字は、main.js
および
const alphabet = [ 'A','B','C','D','E','F', 'G','H','I','J','K','L', 'M','N','O','P','Q','R', 'S','T','U','V','W','X', 'Y','Z' ]; const form = document.forms[0]; const output = document.getElementById('output'); form.addEventListener ('submit',event => { event.preventDefault(); output.innerHTML = [...form.plaintext.value].map(char => encrypt(char)).join(''); }); function encrypt(char) { const shift = Number(form.shift.value); if (alphabet.includes(char.toUpperCase())) { const position = alphabet.indexOf(char.toUpperCase()); const newPosition = (position + shift)%26; return alphabet[newPosition]; } else { return char; } }
encrypt
encrypt
includes
これにより、シーザー暗号マシンが完成します。 これはシンプルな暗号であり、安全な通信には適していないことを忘れないでください。
indexOf
(簡潔にするために要約)
StringBuilder
以上がJavaScriptを使用して暗号マシンを構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。