文章详情页
javascript - 用js实现红包分配问题
问题描述
100元给10个人发红包,红包大小随机,每个人都能得到红包
问题解答
回答1:rpAmount = 100ppCount = 10rpResult=[]rpRnds = []rpRndSum = 0for(let i=0;i<ppCount;i++){let rnd = Math.random();rpRndSum+=rnd;rpRnds.push(rnd);}rpRnds.forEach((rnd)=>{rpResult.push(rpAmount*rnd/rpRndSum)})console.log(’rpResult’,{rpResult,sum:rpResult.reduce((acc,val)=>{return acc+val})})
核心思想:随机数直接确定的权重, 而非金额.
回答2:可以看看这个/q/10...
回答3:思路:使用random函数每次随机分配 每次得出的红包值大于0.01小于剩余金额-剩余人数*0.01 最后一个人获得剩余全部就行
标签:
JavaScript
相关文章:
1. PHP中的$this代表当前的类还是方法?2. javascript - avalon.js ms-on 事件绑定无效 ?3. html - 这种错位的时间轴怎么布局,然后用css实现?4. java - butterknife怎么绑定多个view5. 鼠标过导航标签时,无效果,请问如何查找问题6. html5 - 目前 公司App 嵌入H5页面 做个 手机支付功能 没有做过 所以 请求各位有经验的 给个思路7. java - spring-data Jpa 不需要执行save 语句,Set字段就可以自动执行保存的方法?求解8. java - 如图代码,Collection 类中的iterator()是抽象方法,为什么可以调用?9. IOS app应用软件的id号怎么查询?比如百度贴吧的app-id=47792781310. javascript - vue2.0中使用vue2-dropzone的demo,vue2-dropzone的github网址是什么??百度不到。
排行榜