HTML/CSS/JAVASCRIPT Taschenrechner Fehler beheben?

6 Antworten

Schau mal hier: https://jsfiddle.net/3w4Ltt5p/10/

Ich habe jetzt einfach einen try Catch Block eingefügt.

Du kannst die Eingaben auch vorher auf Gültigkeit prüfen

Mit:

isNaN("3434") // false
isNaN("asdasd") // true

Kannst du überprüfen, ob der String eine Zahl ist oder nicht.

Und du kannst mit Regex überprüfen, ob ein String Buchstaben enthält

/^[a-zA-Z]+$/.test("sdsdsd") // true
/^[a-zA-Z]+$/.test("32323+") // false
/^[a-zA-Z]+$/.test("23232") // false

Am besten immer dann, wenn irgendwo Fehler auftreten können, mit einem try catch Block den Fehler abfangen. Dann kannst DU selbst mit dem Fehler machen, was du willst. Ich habe einfach ein alert eingefügt.

Hey :)

Ich bin leider nicht sehr versiert in JavaScript, aber nach kurzer Recherche bin ich auf die isNaN-Funktion gestoßen, die in diesem Fall eventuell ganz praktisch sein könnte: https://www.w3schools.com/jsref/jsref_isnan.asp

Beste Grüße
Kai

Mache dich doch etwas mehr mit HTML vertraut!

Du benutzt teilweise alte und falsche Tags und hast teilweise einen unlogischen und nicht strukturierten Aufbau deines HTML Gerüstes.

Bei deinem Input Field würde ich anstelle vom type text besser den type number nutzen:

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/number

Woher ich das weiß:Beruf – Software-Entwickler

if-Abfrage mit Regex vor die Auswertung, dann kannst du mit else den Benutzern auch noch einen Hinweis auf den Fehler geben.

und wie gebe ich das ein? bin neu in dem gebiet und froh das mein rechner schonmal die rechenzeichen erkennt und anwendet :D

0
@UweArnoldus

ungetestet, aber irgendwie so sollte das klappen:

if (/^\d+$/.test( -->deinevariable<-- )) {
--> Rechnen <--
} else { 
alert ('Fehlermeldung'); 
}

-->deinevariable<-- muss natürlich duch deine Variable ersetzt werden und -->Rechnen<-- durch deine Routine

0
@Kompaktdesign

was meinst du mit routine? bei den variablen alle buchstaben und satzzeichen eingeben? ich möchte das man in mein lösungsfeld nichts eintragen kann

0
@UweArnoldus

-->deinevariable<-- = die Variable, die du in deinem JS-Code für den Wert des Eingabefeldes nutzt

--> Rechnen <-- = deine Rechenoperation mit der Variable

0
@Kompaktdesign

ich verstehe das nicht sorry habe heute damit angefangen geht das auch für dummies

0
@UweArnoldus

Wenn du einen Rechner mit JavaScript geschrieben hast, dann wirst du irgendwie die eingegebene Zahl aus einem Eingabefeld auslesen, damit du damit rechnen kannst. Das wäre deine Variable. (z.B.: var Zahl = ...)

Dann wirst du einen Code geschrieben haben, der die Rechnung ausführt. Das wäre deine Rechenoperation.

1

Das ist ein furchbarer weg soeinen Taschenrechner zu programmieren. Ich bin mir sicher das geht in unter 10 Zeilen

Was möchtest Du wissen?