Neuer Spruch neuer Seitenaufruf
<script language="JavaScript">
spruch = new Array();
spruch[0] = "Leben ist Zeichnen ohne Radiergummi."
spruch[1] = "Das Leben ist hart ich bin härter."
spruch[2] = "Jeder ist seines Glückes Störenfried."
spruch[3] = ......etc spruch[16].
var jetzt=new Date();
var z=(jetzt.getSeconds())%16;
document.write(spruch[z]);
</script>
Modulo |
|
var z=(jetzt.getSeconds())%16; | |
Damit die Sprüche scheinbar zufällig angezeigt werden,
wird für den Index des arrays spruch[index] der Wert der Sekunde genommen
jetzt.getSeconds(). Allerdings stellt sich hier ein kleines Problem, wenn
man nicht gerade 60 Sprüche oder 60 Elemente in dem Array hat. Hier
behelfen wir uns mittels eines mathematischen Tricks. Wir teilen die Sekunden
durch den höchsten Index des Arrays ( bei 17 Sprüchen wäre
es 16, bedenke es beginnt bei 0) und lassen uns davon den Rest als Wert
rausgeben. Das kann man mit dem sogenannten Modulo machen. wert1%wert2 Bei diesem modulo wird wert1 durch wert2 geteilt und der Restbetrag wird zurückgegeben z.B. 9:4=2 Rest 1 also ergibt 9%4 den Wert 1 Hier noch ein paar Beispiele für die Sekunden. Wenn ich beispielsweise 14 durch 16 teile, erhalte ich Rest 14, denn 14:16=0 Rest 14. Bei Sekunde 0 wäre der Rest 16 Bei Sekunde 20 wäre der Rest 4 Bei Sekunde 32 wäre der Rest 0 Es kommt also nie etwas höheres als 16 raus. |
|
Hier jetzt zum Javascript der Reihe nach. | |
spruch = new Array(); | ein Array namens spruch wird erzeugt |
spruch[0] = "Leben ist Zeichnen
ohne Radiergummi." |
Die einzelnen Elemente des Arrays werden erzeugt und mit Werten versehen, also die einzelnen Sprüche. |
var jetzt=new Date(); | Variable jetzt, ein Datumsobjekt wird erzeugt |
var z=(jetzt.getSeconds())%16; | Variable z bekommt einen Wert mittels oben
erklärtem Modulo zugewiesen mit jetzt.getSeconds() wird aus dem Datumsobjekt die Methode Sekunden entnommen, also die auf dem Rechner eingestellte Sekunde. Dieser Wert wird durch 16 geteilt und der Rest wird zurückgegeben. |
document.write( spruch[z]); | Der soeben erzeugte Wert von z, wird nun dem Array zugewiesen. Zum Beispiel wäre der Wert 0 würde der erste Spruch übergeben, also "Leben ist Zeichnen ohne Radiergummi." |
Neuer Spruch | Der Link Neuer Spruch läd einfach die Seite neu. |
es besteht auch die Möglichkeit mittels des Mathe Objekts Math.random()
Zufallszahlen zwischen 0 und 1 zu erzeugen.