Zugriff auf die Ziffern einer Zahl in JavaScript
Nehmen wir an, in einer Variable ist jetzt
keine Zahl in Anführungszeichen gespeichert, sondern einfach eine Zahl. In diesem
Fall wird der Versuch, auf ein einzelnes
Zeichen zuzugreifen, undefined ausgeben, da
ein solcher Zugriff nur für Strings funktioniert:
let test = 12345;
alert(test[0]); // gibt undefined aus
Um das Problem zu lösen, wandeln wir unsere Zahl in einen String um:
let test = String(12345); // String
alert(test[0]); // gibt '1' aus - alles funktioniert
Nehmen wir an, wir wollen jetzt die Summe der ersten beiden Ziffern finden:
let test = String(12345); // String
alert(test[0] + test[1]); // gibt '12' aus - addiert als Strings
Fügen wir die Funktion Number hinzu, damit
die Zeichen als Zahlen addiert werden:
let test = String(12345); // String
alert(Number(test[0]) + Number(test[1])); // gibt 3 aus
Ich erinnere daran, dass ein Problem dieser Art nur beim Addieren auftritt. Bei der Multiplikation, zum Beispiel, kann die Umwandlung in Zahlen unterbleiben:
let test = String(12345); // String
alert(test[1] * test[2]); // gibt 6 aus
Gegeben sei die Zahl 12345. Finden Sie die Summe der Ziffern
dieser Zahl.
Gegeben sei die Zahl 12345. Finden Sie das Produkt der
Ziffern dieser Zahl.
Gegeben sei die Zahl 12345. Setzen Sie die Ziffern
dieser Zahl in umgekehrter Reihenfolge.