思路:首先生成0-100的随机数,然后去除其中百分之多少的数组范围,去对业务进行判断。
比如有这么一个需求:随机出现道具,概率分别是【空——30%】,【炸弹——30%】,【小红花——20%】,【玉兔——7%】,【月饼——2%】,【红旗(再来一次机会)——1%】
1.首选生成0-100的随机数:
var random=parseeInt(Math.random()*(最大数-最小数+1)+最小数,10);
2.然后对这些随机数进行范围的判断
if(random>=0 && random <31)
{
return "30%是空";
}else if(random>=31 && random < 61)
{
return "30%是炸弹";
}else if(random >=61 && random <= 81)
{
return "20%是小红花";
}else if(random >=81&& random <= 91)
{
return "10%是五角星";
}
else if(random >=91&& random <= 98)
{
return "7%是玉兔";
}
else if(random >=98&& random <= 100)
{
return "2%是月饼";
}else if(random >=100&& random <= 101)
{
return "1%是红旗";
}