Home >Web Front-end >JS Tutorial >Usage and related functions of generating random numbers in JS_javascript skills
First, let me introduce some related functions about random numbers:
var Rand = Math.random();
Math: Math object, providing mathematical calculations on data.
Math.random(); Returns a random number between 0 and 1 (including 0, excluding 1).
Math.ceil(n); Returns the smallest integer greater than or equal to n.
When using Math.ceil(Math.random()*10);, you mainly get random integers from 1 to 10, and the probability of getting 0 is very small.
Math.round(n); Returns the value of n rounded to an integer.
Use Math.round(Math.random()); to get a random integer from 0 to 1 evenly.
When using Math.round(Math.random()*10);, you can basically obtain random integers from 0 to 10 in a balanced manner, including the probability of obtaining the minimum value 0 and the maximum value 10 Less than half.
Math.floor(n); Returns the largest integer less than or equal to n.
When using Math.floor(Math.random()*10);, random integers from 0 to 9 can be obtained evenly.
Random lottery can also be expanded, such as setting the probability of lottery and using it with the database.
//中奖概率需求,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('恭喜您抽到书本!'); } }
Corresponding js function code for generating random numbers:
<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; }
The above is the detailed content of this article, I hope it will be helpful to everyone’s study.