Versionen dieses Beitrags

Zahlenreihe mit JavaScript bearbeiten

Thepoeppel crop Rolf B
  • Zahlenreihe mit JavaScript bearbeiten
  • Hallo skimann,
  • Schritt 1:
  • dein Eingabefeld liefert Dir einen String. Zum Beispiel "91801234123".
  • Strings kann man mit dem [] Operator zeichenweise verwenden. xy[3] liefert einen String der Länge 1, der das Zeichen an Indexposition 3 enthält. "91801234123"[3] liefert "0".
  • Schritt 2:
  • Möglichkeit 1: Strings kann man mit dem [] Operator zeichenweise verwenden. xy[3] liefert einen String der Länge 1, der das Zeichen an Indexposition 3 enthält. "91801234123"[3] liefert "0".
  • Möglichkeit 2: Strings haben eine Split-Methode, mit der man einen String an einem Trennzeichen in Teilstrings aufteilen kann. "Das Wetter ist schön".split(" ") liefert zum Beispiel das Array [ "Das", "Wetter", "ist", "schön" ]. Guck mal (z.B. in der Entwicklerkonsole des Browsers), was "91801234123".split("") macht.
  • Möglichkeit 3: ECMAScript 2015 führt iterierbare Collections ein, die sich mit der [for...of Schleife](https://wiki.selfhtml.org/wiki/JavaScript/Schleife#Schleifen_mit_.22for...of.22) durchlaufen lassen. Arrays sind iterierbar. Und ein String ist eine iterierbare Collection von Zeichen.
  • Schritt 3:
  • Einen String, der die Textdarstellung einer Integer-Zahl enthält, wandelt man mit parseInt() in eine Zahl um. Oder, allgemeiner, mit Number(). Was auch geht, ist die Multiplikation einer Zahl mit einem String, z.B. 2*"4", das wandelt automatisch "4" in 4 um und liefert 8.
  • Einen String, der die Textdarstellung einer Integer-Zahl enthält, wandelt man mit [parseInt()](https://wiki.selfhtml.org/wiki/JavaScript/parseInt) in eine Zahl um. Oder, allgemeiner, mit [Number()](https://wiki.selfhtml.org/wiki/JavaScript/Funktion/Number). Was auch geht, ist die Multiplikation einer Zahl mit einem String, z.B. 2*"4", das wandelt automatisch "4" in 4 um und liefert 8.
  • Tipps genug?
  • _Rolf_
  • --
  • sumpsi - posui - clusi

Zahlenreihe mit JavaScript bearbeiten

Thepoeppel crop Rolf B
  • Zahlenreihe mit JavaScript bearbeiten
  • Hallo skimann,
  • dein Eingabefeld liefert Dir einen String. Zum Beispiel "1234567".
  • dein Eingabefeld liefert Dir einen String. Zum Beispiel "91801234123".
  • Strings kann man mit dem [] Operator zeichenweise verwenden. xy[3] liefert einen String der Länge 1, der das Zeichen an Indexposition 3 enthält. "0123456"[3] liefert "3".
  • Strings kann man mit dem [] Operator zeichenweise verwenden. xy[3] liefert einen String der Länge 1, der das Zeichen an Indexposition 3 enthält. "91801234123"[3] liefert "0".
  • Einen String, der die Textdarstellung einer Integer-Zahl enthält, wandelt man mit parseInt() in eine Zahl um. Oder, allgemeiner, mit Number(). Was auch geht, ist die Multiplikation einer Zahl mit einem String, z.B. 2*"4", das wandelt automatisch "4" in 4 um und liefert 8.
  • Tipps genug?
  • _Rolf_
  • --
  • sumpsi - posui - clusi

Zahlenreihe mit JavaScript bearbeiten

Thepoeppel crop Rolf B
  • Zahlenreihe mit JavaScript bearbeiten
  • Hallo skimann,
  • dein Eingabefeld liefert Dir einen String. Zum Beispiel "1234567".
  • Strings kann man mit dem [] Operator zeichenweise verwenden. xy[3] liefert einen String der Länge 1, der das Zeichen an Indexposition 3 enthält. "0123456"[3] liefert "3".
  • Einen String, der die Textdarstellung einer Integer-Zahl enthält, wandelt man mit parseInt() in eine Zahl um. Oder, allgemeiner, mit Number(). Was auch geht, ist die Multiplikation einer Zahl mit einem String, z.B. 2*"4", das wandelt automatisch "4" in 4 um und liefert 8.
  • Tipps genug?
  • Die Einzeiler-Lösung ist übrigens
  • ~~~js
  • let eingabe = inputelement.value;
  • let prüfziffer = (100-eingabe.split("").reduce((s,v,i)=>(v*=(2-(i%2)),s+(v>9?v-9:v)),0))%10;
  • ~~~
  • _Rolf_
  • --
  • sumpsi - posui - clusi

Zahlenreihe mit JavaScript bearbeiten

Thepoeppel crop Rolf B
  • Zahlenreihe mit JavaScript bearbeiten
  • Hallo skimann,
  • dein Eingabefeld liefert Dir einen String. Zum Beispiel "1234567".
  • Strings kann man mit dem [] Operator zeichenweise verwenden. xy[3] liefert einen String der Länge 1, der das Zeichen an Indexposition 3 enthält. "0123456"[3] liefert "3".
  • Einen String, der die Textdarstellung einer Integer-Zahl enthält, wandelt man mit parseInt() in eine Zahl um. Oder, allgemeiner, mit Number().
  • Einen String, der die Textdarstellung einer Integer-Zahl enthält, wandelt man mit parseInt() in eine Zahl um. Oder, allgemeiner, mit Number(). Was auch geht, ist die Multiplikation einer Zahl mit einem String, z.B. 2*"4", das wandelt automatisch "4" in 4 um und liefert 8.
  • Tipps genug?
  • Die Einzeiler-Lösung ist übrigens
  • ~~~js
  • let eingabe = inputelement.value;
  • let prüfziffer = (100-eingabe.split("").reduce((s,v,i)=>(v*=(2-(i%2)),s+(v>9?v-9:v)),0))%10;
  • ~~~
  • _Rolf_
  • --
  • sumpsi - posui - clusi