Dieses Tutorial zeigt Ihnen, wie Sie mit JavaScript eine Caesar -Chiffre -Maschine erstellen. Die Caesar -Chiffre verschiebt jeden Buchstaben in einer Nachricht eine bestimmte Anzahl von Orten.
Wir erstellen eine HTML -Seite mit einem Formular, um die Nachricht und den Schaltwert einzugeben, und ein Div, um das verschlüsselte Ergebnis anzuzeigen.
Der JavaScript -Code enthält:
encrypt
-Funktion, die die Caesar-Chiffre anwendet, die Nicht-Alphabet-Zeichen und die Fallempfindlichkeit behandelt. Hier ist ein Beispiel für den fertigen Code. Experimentieren Sie mit dem Erstellen von geheimen Nachrichten!
Erstellen Sie zuerst 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>
Diese HTML erstellt eine einfache Form. Die Shift -Eingabe stand auf 5, aber Sie können es anpassen.
Erstellen Sie als nächstes main.js
im selben Ordner:
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; } }
Dieser JavaScript -Code definiert das Alphabet, erhält Formelemente, fügt einen Ereignishörer hinzu, um die Formulare zu verarbeiten, und enthält die encrypt
-Funktion, die die Caesar -Chiffre ausführt. Die Funktion encrypt
überlastet Großbuchstaben; Kleinbuchstaben werden implizit von den Methoden includes
und indexOf
behandelt.
Dies vervollständigt die Caesar -Chiffre -Maschine. Denken Sie daran, dass dies eine einfache Chiffre ist und nicht für sichere Kommunikation geeignet ist.
häufig gestellte Fragen (FAQs) (für die Kürze zusammengefasst)
StringBuilder
für eine schnellere String-Manipulation. Das obige ist der detaillierte Inhalt vonSo bauen Sie eine Chiffre -Maschine mit JavaScript auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!