JavaScript如何使用随机数做概率操作?

时间:2024-03-17 19:08:30

思路:首先生成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%是红旗";

}