Heim >Web-Frontend >js-Tutorial >Verwendung und verwandte Funktionen zum Generieren von Zufallszahlen in JS_Javascript-Kenntnissen
Lassen Sie mich zunächst einige verwandte Funktionen zu Zufallszahlen vorstellen:
var Rand = Math.random();
Mathe: Mathematisches Objekt, das mathematische Berechnungen für Daten bereitstellt.
Math.random(); Gibt eine Zufallszahl zwischen 0 und 1 zurück (einschließlich 0, außer 1).
Math.ceil(n); Gibt die kleinste ganze Zahl größer oder gleich n zurück.
Bei Verwendung von Math.ceil(Math.random()*10); erhalten Sie hauptsächlich zufällige ganze Zahlen von 1 bis 10, und die Wahrscheinlichkeit, 0 zu erhalten, ist sehr gering.
Math.round(n); Gibt den Wert von n gerundet auf eine ganze Zahl zurück.
Verwenden Sie Math.round(Math.random());, um gleichmäßig eine zufällige Ganzzahl von 0 bis 1 zu erhalten.
Wenn Sie Math.round(Math.random()*10); verwenden, können Sie grundsätzlich zufällige ganze Zahlen von 0 bis 10 auf ausgewogene Weise erhalten, einschließlich der Wahrscheinlichkeit, das Minimum zu erhalten Wert 0 und der Maximalwert 10 Weniger als die Hälfte.
Math.floor(n); Gibt die größte Ganzzahl zurück, die kleiner oder gleich n ist.
Bei Verwendung von Math.floor(Math.random()*10); können gleichmäßig zufällige ganze Zahlen von 0 bis 9 erhalten werden.
Die Zufallslotterie kann auch erweitert werden, indem beispielsweise die Wahrscheinlichkeit einer Lotterie festgelegt und mit der Datenbank verwendet wird.
//中奖概率需求,100%中奖,有3项奖品,但是抽到书本的概率为20% function draw() { var d_s = GetRandom(100); if (d_s >= 1 && d_s <= 40) { alert('恭喜您抽到XXX!'); } else if (d_s >= 41 && d_s <= 80) { alert('恭喜您抽到XXX!'); } else { alert('恭喜您抽到书本!'); } }
Entsprechender js-Funktionscode zum Generieren von Zufallszahlen:
<script> 2function GetRandomNum(Min,Max) { var Range = Max - Min; var Rand = Math.random(); return(Min + Math.round(Rand * Range)); } 8var num = GetRandomNum(1,10); 9alert(num); </script> var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']; function generateMixed(n) { var res = ""; for(var i = 0; i < n ; i ++) { var id = Math.ceil(Math.random()*35); res += chars[id]; } return res; }
Das Obige ist der detaillierte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein.