Losowość czyli random

Korzystając z obiektu Math bardzo łatwo można wyliczać liczby losowe. Częstokroć się to przydaje w skryptach, gdy jakieś zdarzenie musi się dziać w zależności od przypadku.

Przypuśćmy że chcemy wygenerować 6 cyfrowy przypadkowy numer. Skorzystajmy z metody obiektu Math random.
Standardowo Metoda ta generuje randomowe liczby z przedziału 0 - 1:


for (var i=0; i<10; i++) {
    document.write(Math.random() + ", ");
}

Możecie spróbować załadować ponownie tę stronę i zobaczyć jak liczby te się zmieniają.

Jeżeli umiemy wygenerować liczbę z przedziału 0 - 1, to nic nie stoi na przeszkodzie aby była to liczba z przedziału powiedzmy 0 - 10.

    
for (i=0; i<10; i++) {
    document.write( Math.round(Math.random()*10) + ", ");
}

Wystarczy teraz zaokrąglić wynik przy pomocy metody round obiektu Math i w wyniku dostajemy gotowe całkowite liczby z przedziału 0 - 10.


Kilka przykładów:


//przedzial 100 - 200
for (var i=0; i<10; i++) {
    document.write((Math.floor(Math.random()*100) + 100) + ", ");
}

//przedział 0 - 200
for (var i=0; i<10; i++) {
    document.write((Math.floor(Math.random()*10) + Math.round(Math.random()*10)) + ", ");
}

Na koniec wygenerujmy nasz 6 cyfrowy kod. Skorzystamy tutaj z pętli:


for (var i=0; i<6; i++) {
    var number = Math.floor(Math.random()*10);
    document.write(number);
}

Tworzymy pętle. W każdej jej przebiegu obliczamy wartość zmiennej cyfra, która przyjmuje wartości od 0 do 9. Nasz kod będzie składał się z 6 takich cyfr:

Odśwież stronę aby się przekonać, że za każdym razem wszystkie liczby będą inne.