Was mache ich hier falsch?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Also zunächst schreibst Du mal fälschlicherweise document.getElementById("massageInput")

Da kriegst Du vermutlich keinen Value, es sei denn die Element-ID des Inputelements heisst tatsächlich so. Gemeint war aber eher Message statt Massage :)

Dann der for-Loop. Das macht so keinen Sinn. Du versuchst in assoziativer Weise auf das message-Array (String characters) zuzugreifen. Du solltest das eher so machen:

for (i=0; i < message.length; i++) {
 out += String.fromCharCode((message.charCodeAt(i)+key));
}

// und dann weiter unten:
document.getElementById("output").value = out;

// NB: ich habe ein separates input-element namens "output"
// fuer den Output-String erstellt

"key" wäre einfach eine Zahl, z.B. 4, die auf den Character Code addiert wird.

Das Beispiel ist wirklich primitiv, da es z.B. keine Prüfung gibt, wenn key oder das n-te Message-Character so gross ist, dass es mit key zusammen addiert über die Bereichsgrenze des Zeichensatzes hinausgeht.

Backstein42 
Fragesteller
 22.11.2021, 16:07

Danke!

PS: Die Element-ID ist wirklich "massageInput". Habe mich wohl verschrieben.

0