Prompt Box mit String und Number |
<script language="JavaScript" type="text/javascript">
var x, y;
x=prompt("Gib mal eine Zahl ein","");
y=prompt("Gib mir noch eine Zahl","");
alert(Number(x)+Number(y));
</script>
prompt("fenstertext" , "eingabe")
Wie man sieht kommt in die Klammern vor das Komma der Text, welcher in der Prompt
Box angezeigt wird.
Hinter dem Komma kommen in der Regel nur 2 Anführungszeichen, es sei denn
man will im Eingabefeld einen Text vorgeben.
Der Wert des Eingabefeldes wird an die Variable zurückgegeben.
Die Prompt Box gibt den Datentyp String zurück. Was heißt das denn
schon wieder?
Nicht nur in Javascript sondern auch in anderen Programmiersprachen gibt es verschiedene Datentypen,
unter anderem eben auch string und number.
Wenn ich beispielsweise 2+3 schreibe so könnte das 5 oder 23 sein.
Bei 5 würde es sich um number handeln. Die beiden Zahlen werden als Werte
angesehen, mit denen man rechnen kann.
Bei 23 wäre es string. Die beiden Zahlen werden als Zeichen oder Zeichenketten
angesehen, die man aneinanderreiht.
Die Prompt Box gibt immer string Werte zurück, welche in unserem Beispiel
mittels Number() in eine numerische, rechnerische Zahl umgewandelt werden müssen.
Noch was, erinnern wir uns an das vorige Beispiel
x=2;
y=3;
alert(x+y);
Hier kamen die Werte der Variablen nicht von einer prompt box, sondern
wurden im Script definiert und sind somit numerische Zahlenwerte, also number.
Wenn ich bei diesem Beispiel die beiden Zahlen als string Zeichenketten behandeln
will, so daß 23 (zwei drei) erscheinen würde, so müßte
ich die beiden Zahlen in Anführungsstriche schreiben.
x="2";
y="3";
Was würde wohl passieren wenn man es stattdessen so schreiben würde?
alert("x"+"y");
Wenn du das auf Anhieb weißt hast du es kapiert.
Ich verrate es dir, in der Alert Box steht dann xy
Das Pluszeichen hat hier eine andere Bedeutung, es dient als Verkettungsoperator mit dem man Strings und auch Number-Werte aneinanderreiht. Ändere das alert Objekt folgendermaßen.
alert("das Ergebnis ist: " + (Number(x)+Number(y)))
Zu Beginn ein String in Anführungsstrichen, gefolgt von einem Pluszeichen, welches hier als Verkettungsoperator dient, dahinter, in Klammern eingeschlossen, die Addition.
Das Pluszeichen hat 2 Bedeutungen: