Náhodné čísla v JavaScripte
Náhodné čísla majú najrôznejšie spôsoby použitia, od zábavných po praktické. Väčšina hier zahŕňa nejakú náhodnosť vo forme vecí, ako sú kocky alebo zamiešané karty. Ak chcete zobraziť náhodnú ponuku, keď niekto navštívi vašu stránku, potrebujete zdroj náhodnosti. Náhodné čísla nie sú všetky zábavné a hry, náhodné čísla sa používajú v kryptografii, na náhodné vzorkovanie, na modelovanie a na umiestňovanie vecí v náhodnom poradí (napríklad kandidáti na tajné hlasovanie). Niektoré z týchto použití nepoužívajú čísla priamo. , ale môžete prevádzať z náhodných čísel na náhodné veci umiestnením vecí, ktoré chcete vybrať, do riadkov a náhodným výberom riadku. Pri programovaní na to dobre fungujú polia. Náhodné čísla nie sú vždy náhodné. Ak hodíte sadu spravodlivých kockami, získate náhodné čísla, avšak metódy, ktoré počítače používajú na výber náhodných čísel, sú často pseudonáhodné čísla, čo znamená, že sa na povrchu javia ako náhodné, ale v skutočnosti sú buď predvídateľné alebo opakujúca sa séria. Pre niektoré veci to nie je dôležitý rozdiel. Ak zobrazujete náhodnú ponuku alebo vtip zakaždým, keď niekto načíta vašu webovú stránku, pravdepodobne nezáleží na tom, kto môže predpovedať, kedy sa konkrétna cenová ponuka zobrazí, a môžete bezpečne používať pseudonáhodné čísla (z tohto dôvodu by ste pravdepodobne mohli len ukážte svoje úvodzovky v poradí, v akom ste ich napísali.) Ak sa snažíte robiť náhodné testovanie liekov športovcov Tour de France, je dôležité, aby športovci neboli schopní predpovedať, kedy alebo či budú testovaní.

Objekt Math Math obsahuje metódu, ktorá poskytuje pseudonáhodné čísla. Na rozdiel od mnohých iných programovacích jazykov vám JavaScript neumožňuje nasadiť generátor čísel vlastným zdrojom náhodnosti. Rôzne implementácie sa líšia v tom, ako blízko sú skutočne poskytnuté čísla, ale vo všeobecnosti by mali byť dosť dobré na použitie na zábavné alebo umelecké účely, ale ak potrebujete náhodné čísla na právne regulované alebo bezpečnostné účely, mali by ste nájsť lepší zdroj náhodnosť. Math.random () Metóda vracia náhodné číslo, ktoré je buď 0 alebo medzi 0 a 1. Niektoré verzie prehliadača Opera majú nezodpovedajúce štandardy Math.random () metóda, ktorá sa veľmi zriedka vráti 1. Tento neočakávaný výsledok musíte nejako zvládnuť - najjednoduchší návrh, ktorý som videl, je použiť operátor modulo s jedným oproti hodnote vrátenej Math.random (), toto vráti pôvodnú hodnotu, ak je náhodné číslo v definovanom rozsahu a 0, ak máte 1. Tiež zistím, že nepotrebujem náhodné desatinné miesto menšie ako jedno, ale náhodné celé číslo. Ak chcete získať náhodné celé číslo, vynásobte hodnotu z Math.random () podľa počtu potenciálnych náhodných čísel (X) a nájdenia predchádzajúceho alebo nasledujúceho celého čísla. Matematický objekt poskytuje metódy podlahy a stropu, ktoré môžete použiť na tento účel. Ak používate math.floor () metóda, dostanete číslo od 0 do (X-1). Ak používate math.ceiling () metóda dostanete celé číslo od 1 do X.

Ak chcete nájsť náhodné číslo medzi 0 a (X-1), použite:

Math.floor ((Math.random ()% 1) * X)

Tieto sú užitočné najmä pri hľadaní náhodného prvku poľa.

Ak chcete nájsť náhodné číslo medzi 1 a X, použite:

Math.ceiling ((Math.random ()% 1) * X)

Úlohy podobné tomuto, ktoré sú dosť bežné, ale vyžadujú trochu zadania, sú dobrými kandidátmi na to, aby sa z nich stala funkcia.

Ak chcete diskutovať o rozdieloch medzi skutočne náhodnými číslami a pseudonáhodnými číslami, ktoré tu používame, zdrojom skutočne náhodných čísel a príkladmi zábavných vecí, ktoré môžete robiť s náhodnými alebo pseudonáhodnými číslami, navštívte stránku www.random. org

Video Návody: Náhodná čísla v PHP (Marec 2024).