js写抽奖转盘怎么设置中奖几率

js写抽奖转盘怎么设置中奖几率,第1张

js用向后端发送请求,然后后端通过一些算法计算出要中的奖项或者旋转的角度,返回到前端,js根据返回的奖项或者旋转的角度,来决定最终停止的位置。

中奖几率基本不写在js里,因为js可以被破解和修改,都是写在后端的。

可以利用Math对象的random方法。它将返回一个0到1之间的浮点类型数。但仅仅这个还不够,必须还要有一定的算法才可以实现一定范围取值。

Math.floor(Math.random()*x)    //返回0到x-1的随机整数

Math.floor(Math.random()*x+y)    //返回0+y到x-1+y的随机整数

其中floor方法是用来取浮点类型的整数部分。

顺便说一下,JS很难控制抽奖抽中的概率,毕竟还没有这种算法。我有一个建议,就是将同事能抽的数字范围增大,孩子能抽的数字范围减小。比如中奖号码为96,则同事可写:

Math.floor(Math.random()*100+50)    //取50到149

孩子可这样写:

Math.floor(Math.random()*70+70)     //取70到139

测试结果如图(这个结果是10次抽到号码需要的次数的平均值,结果四舍五入):

这样孩子的抽中概率比同事的抽中概率要大了。

给每个奖品单独设定一个机率值,再用此值乘以随机数得到他的中奖率。比如A的值是5 B的值是100 随机值X是1-10那么A的总奖率就是 5<(5 * X) <50而A的中奖率就是100 <(100*x) <1000如何手动设置抽奖的概率


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11757274.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存