Насумични бројеви у ЈаваСцрипт-у
Насумични бројеви имају све врсте употребе, од забавног до практичног. Већина игара укључује неку врсту насумичности у облику ствари попут коцкица или мешања карте. Ако желите да прикажете случајни цитат када неко посети вашу страницу, потребан вам је извор случајности. Насумични бројеви нису све забаве и игре, случајни бројеви користе се у криптографији, за случајно узорковање, моделирање и стављање ствари случајним редоследом (као што су кандидати на гласачком листићу). Неке од ових употреба не користе бројеве директно , али можете претворити из случајних бројева у случајне ствари стављајући ствари које желите одабрати у редове и насумично бирати ред. У програмирању, низови добро раде за то. Насумични бројеви нису увек заиста случајни. Ако баците скуп поштених коцкица, добићете случајне бројеве, међутим методе које рачунари користе за бирање случајних бројева често су псеудо случајни бројеви, што значи да на површини изгледају као случајни, али су заправо или предвидљиви или понављајућа серија. За неке ствари, ово није битна разлика. Ако прикажете случајни цитат или се шалите сваки пут када неко учита вашу веб страницу, вероватно није важно да ли неко може предвидети када ће се појавити одређени цитат и можете сигурно користити псеудо-случајне бројеве (за ту ствар, вероватно бисте могли само покажите цитате редоследом којим сте их уписали.) Ако покушавате да урадите насумично тестирање дрога спортиста из Тоур де Францеа, од пресудне је важности да спортисти не могу да предвиде када и на који начин ће их тестирати.

Објект ЈаваСцрипт Матх укључује методу која даје псеудо-случајне бројеве. За разлику од многих других програмских језика, ЈаваСцрипт вам не дозвољава сејање генератора бројева сопственим извором случајности. Различите имплементације разликују се по томе колико су заиста случајни бројеви који се пружају, али генерално, они би требали бити довољно добри за забаву или умјетничку употребу, али ако вам требају случајни бројеви за законски регулиране или сигурносне сврхе, требали бисте пронаћи бољи извор случајност. Тхе матх.рандом () метода враћа случајни број који је или 0 или између 0 и 1. Неке верзије прегледача Опера имају усаглашавање са нестандардним стандардима матх.рандом () метода која ће се врло ретко вратити 1. Морате се некако носити с овим неочекиваним резултатом - најлакши предлог који сам видео је да користите модуло оператор са оним против вредности враћене од стране матх.рандом (), ово ће вратити изворну вредност ако је случајни број у дефинисаном распону и 0 ако сте добили 1. Такође, сматрам да ми није потребан случајни децимални број мањи од један, већ случајни цели број. Да бисте добили случајни цели број, множите вредност са матх.рандом () према броју потенцијалних случајних бројева које желите (Кс) и проналажењу претходног или следећег целог броја. Математички објект пружа методе пода и плафона које можете користити у ту сврху. Ако користите матх.флоор () методом, добићете број од 0 до (Кс-1). Ако користите матх.цеилинг () методом добићете цео број од 1 до Кс.

Да бисте пронашли случајни број између 0 и (Кс-1), користите:

Матх.флоор ((Матх.рандом ()% 1) * Кс)

Они су посебно корисни за проналажење случајног елемента низа.

Да бисте пронашли случајни број између 1 и Кс, користите:

Матх.цеилинг ((Матх.рандом ()% 1) * Кс)

Задаци попут овог који су прилично чести, али захтевају прилично мало куцања, су добри кандидати за претварање у функцију.

За дискусију о разлици између заиста случајних бројева и псеудо случајних бројева које овде користимо, извора заиста случајних бројева и неколико примера забавних ствари које можете урадити са случајним или псеудо-случајним бројевима погледајте на ввв.рандом. орг

Видео Упутства: Порекло живота није објашњено - Др. Џејмс Тур (Може 2024).