Autor
Nachricht
TNT
Enzian


Anmeldungsdatum: 11.01.2003
Beiträge: 273
Wohnort: Hattingen

Beitrag21.04.2004 13:20   Titel: Zufall mit JavaScript
Antworten mit Zitat
Zufälle auf einer Webseite kann man für ein breitgefächertes Spektrum nutzen. Sei es, dass man einen Splashscreen anzeigen möchte oder spezielle Texte ein wenig durch Variation auflockert. Nicht immer steht jedoch PHP zur Verfügung, und so wird dir hier gezeigt, wie man das Ganze auf Basis von JavaScript programmiert.

Um so etwas programmieren zu können muss man sich jedoch erst einmal darüber klarwerden, was Zufall überhaupt bedeutet:
Auf einem Würfel kann man 6 Zahlen ohne bestimmte Voraussetzungen anzeigen lassen. Dies geschieht willkürlich. Aber um Zufälle auf dem Computer zu generieren benötigt man ebenso eine scheinbar willkürlich gewählte Zahl, da JavaScript keinen Zufallsgenerator mitbringt.
Hierbei kommt uns die Systemzeit des Nutzers gerade recht. Verändert sie sich doch - scheinbar - willkürlich. An diese kommt man per folgendem Aufruf, wobei zu beachten gilt, dass der HTML-Script Tag bereits geöffnet ist:

Code:
var zeit=new Date();

Hier wird der Variable zeit der Wert des aktuellen Datums in Form von Rohdaten übergeben. Hieraus kann man nun zum Beispiel wiederum die Sekunden extrahieren, die auf höchstens 59 hochgezählt werden.

Code:
var sekunden = zeit.getSeconds();

Für größere Zahlen addiert man einfach die Stunden oder ähnliches.

Nun kommt nun die mathematische Funktion Modulo ins Spiel: Sie teilt beliebige Zahlen durch andere, gibt jedoch nicht das Ergebnis zurück, sondern den Rest. Wie zum Beipsiel 3 %(Modulo) 2 = 1 ist. Der Teiler ist somit die Anzahl der verschiedenen möglichen Zufallszahlen, da bei einer Division durch 2 maximal 2 verschiedene Modulo-Ergebnisse zusammenkommen: 0 und 1. Bei einer Division durch 3 sind es 0, 1 und 2. Diese Reihe ließe sich beliebig fortsetzen. Aber nun konkret:

Code:
var zufallszahl = zeit.getSeconds()%3;

Nun habe ich eine Zufallszahl genieriert, die ich beliebig einsetzen kann.

Zum besseren Verständnis hier noch einmal ein komplettest Script:

Code:
<script language="javascript">
function zufall()
{
   var bildernamen = new Array(3);

   bildernamen[0] = "Nummer1";
   bildernamen[1] = "Nummer2";
   bildernamen[2] = "Nummer3";

   var zeit=new Date();
   var zufallszahl = zeit.getSeconds()%3;
   return bildernamen[zufallszahl];
}
document.write(zufall());
</script>

Hierbei wird die Zufallszahl zur Ausgabe einer bestimmten Dimension eines Arrays verwendet.

Tutorial von Daniel "TNT" Schade.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen ICQ-Nummer
Beiträge vom vorherigen Thema anzeigen:   
Neuen Beitrag schreiben   Auf Beitrag antworten    planet-tutorials.de Foren-Übersicht -> HTML/XML und JavaScript Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine hier Beiträge schreiben.
Du kannst hier nicht auf Beiträge antworten.
Du kannst hier Deine Beiträge nicht bearbeiten.
Du kannst hier Deine Beiträge nicht löschen.
Du kannst hier an Umfragen nicht mitmachen.


Powered by phpBB 2.0.3 © 2001, 2002 phpBB Group