Véletlen számok a JavaScript-ben
A véletlen számoknak mindenféle felhasználása van, a szórakoztatóktól a gyakorlatiig. A legtöbb játék valamilyen véletlenszerűséget tartalmaz, például kocka vagy megkevert kártya formájában. Ha véletlenszerű ajánlatot szeretne megjeleníteni, amikor valaki meglátogatja az oldalt, akkor szüksége van egy véletlenszerűség forrására. A véletlen számok nem minden szórakozás és játék, a véletlen számokat használják kriptográfia, véletlenszerű mintavétel, modellezés és a dolgok véletlenszerű sorrendbe állítása (például a jelöltek szavazólapon történő elhelyezésére). Ezeknek a felhasználásoknak egy része nem használja közvetlenül a számokat. , de a véletlenszerű számokból véletlenszerűekké konvertálható, ha sorba rendezi a választani kívánt dolgokat, és véletlenszerűen választ egy sort. A programozás során a tömbök ehhez jól működnek. A véletlen számok nem mindig igazán véletlenszerűek. Ha egy tisztességes kocka halmazát gördít, véletlenszerű számokat kap, azonban azok a módszerek, amelyeket a számítógépek véletlenszerű számok kiválasztására használnak, gyakran pszeudo-véletlen számok, ami azt jelenti, hogy véletlenszerűnek tűnnek a felületen, de valójában kiszámíthatók vagy egy ismétlődő sorozat. Bizonyos esetekben ez nem fontos különbség. Ha véletlenszerű árajánlatot vagy viccet jelenít meg minden alkalommal, amikor valaki betölti az Ön weboldalát, akkor valószínűleg nem számít, hogy valaki meg tudja-e előre jelezni, hogy mikor jelenik meg egy adott ajánlat, és biztonságosan használhatja ál-véletlenszerű számokat (e tekintetben valószínűleg csak mutassa meg árajánlatait abban a sorrendben, ahogyan írta le őket.) Ha véletlenszerű kábítószer-tesztelést próbál tenni a Tour de France sportolóknál, akkor alapvető fontosságú, hogy a sportolók ne tudják megjósolni, hogy mikor teszik őket.

A JavaScript Math objektum olyan módszert tartalmaz, amely ál-véletlenszerű számokat szolgáltat. Sok más programozási nyelvvel ellentétben a JavaScript nem teszi lehetővé, hogy a számgenerátort saját véletlenszerűségének forrásával feltöltse. A különböző megvalósítások abban különböznek egymástól, hogy a megadott számok valóban véletlenszerűek-e, de általában elég jónak kell lenniük szórakozáshoz vagy művészi felhasználáshoz, de ha véletlenszerű számokra van szükségük jogilag szabályozott vagy biztonsági célokra, akkor jobb forrást kell találniuk. véletlenszerűség. Az Math.random () A módszer egy 0 vagy 0 és 1 közötti véletlenszerű számot ad vissza. Az Opera böngésző egyes verziói nem szabványosak Math.random () módszer, amely nagyon ritkán tér vissza 1. Önnek valamilyen módon kell kezelnie ezt a váratlan eredményt - a legegyszerűbb javaslat, amit láttam, az, hogy a modulo operátort használja az ellenérték által visszaadott értékkel szemben. Math.random (), ez visszaadja az eredeti értéket, ha a véletlen szám a megadott tartományban van, és 0, ha 1-je van. Ezenkívül azt találom, hogy nincs szüksége egynél kevesebb véletlenszerű decimálisra, hanem egy véletlen egész számra. Ha véletlen egész számot szeretne kapni, meg kell szoroznia az értéket Math.random () a kívánt potenciális véletlen számok száma szerint (X), és megkeressük az előző vagy a következő egész számot. A matematikai objektum padló- és mennyezeti módszereket biztosít, amelyek felhasználhatók erre a célra. Ha a math.floor () módszerrel 0-tól (X-1) számot kap. Ha a math.ceiling () módszerrel egész számot kap 1-től X-ig.

Ha 0 és (X-1) közötti véletlen számot szeretne találni, használja:

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

Ezek különösen hasznosak egy véletlenszerű tömb elem megkereséséhez.

Az 1 és X közötti véletlen szám megtalálásához használja:

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

Az ilyen feladatok, amelyek meglehetősen gyakoriak, de meglehetősen kevés gépelést igényelnek, jó jelöltek arra, hogy funkcióvá váljanak.

A valóban véletlenszerű számok és az általunk használt ál-véletlen számok közötti különbségről egy valóban véletlenszerű számok forrása, valamint néhány példa a szórakoztató dolgokra, amelyeket véletlenszerű vagy ál-véletlenszerű számokkal tehetünk meg, olvassa el a www.random oldalt. org

Video Utasításokat: Javascript #8 - Véletlenszám-generálás (Lehet 2024).