公开抽奖算法!公示开奖记录!请叫我“蜻蜓队长”!

开奖记录 本瓜将在此小节,公开往期所有抽奖的【开奖记录】,并会持续更新、维护这个表! 日期???? 奖品???? 中奖工友???? 沸点链接???? 2021.11.15 一套掘金徽章(共8枚) 就你帅 2021.11.07 掘金超大鼠标垫 Benjamin 2021.11.02 掘金缸子(或帽子) 掘金WindTalker 2021.09.27 1 包地狱辣拉面说(共 3 名) BUG预言家、一只鱼呀、摸摸鱼神 2021.09.14 4 个毛绒公仔 看星星的兔子 2021.09.06 1箱(6包)加辣加臭螺蛳粉 滑稽点 2021.08.07 100 现金红包 你的代码有bug 2021.07.23 掘金缸子 Mr_Chai 各位工友请放心,既然把抽奖这个事儿正紧的提上了日程,后续活动会越来越多!! 如果你对奖品有任何想法,可以留言反馈~ 持续关注!!持续抽奖!!! 让我康康,有谁会跟奖品过不去(●'◡'●)~~ 抽奖算法 抽奖嘛,公平永远是第一位!每人的中奖概率均等是最最最要紧的前提! 刚好在一篇掘文《# 卡牌大师:玩转“洗牌算法”,幸运女神在微笑 (^_^)》中研究了乱序洗牌算法,如果公开算法来抽奖,那不得是:有理有据,百口莫辩! 老观众都知道,抽奖算法一直用的是著名的 Fisher-Yates 算法,对原理有兴趣的工友,可到前面的文章中去寻找; 以下是完整代码,可在活动沸点界面的控制台中运行: const domArr=document.getElementsByClassName("comment-list")[0].getElementsByClassName("username username") const getLuckyBoys = function(){ // 获取参与沸点评论的掘友 let luckyBoys = [] for(let i =0;i<domArr.length;i++){ luckyBoys.push(domArr[i].innerText) } return Array.from(new Set(luckyBoys))// 去重“重复评论” } const FYShuffle_lucyest = function () { // 乱序算法 let nums=[] for(let i=1,len=getLuckyBoys().length;i 1) { let rand = Math.floor(Math.random() * len); len--; let temp = radomNums[len]; radomNums[len] = radomNums[rand]; radomNums[rand] = temp; } return radomNums[0]; // 中奖序号 } const handleLottery =function (){ // 进行抽奖 console.log("参赛选手:",getLuckyBoys()) console.log("最终得奖:",getLuckyBoys()[FYShuffle_lucyest()-1]) console.log(new Date()) } setInterval(()=>{ // 当天抽奖倒计时 let date = new Date() console.log(`倒计时,${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`) if (date.getHours() ===17 &&date.getMinutes()===0 &&date.getSeconds()===0) { // 17 点整开奖 handleLottery() } },1000) 复制代码 掘金评论功能在改版,获取 Dom 可能存在细微差别; @我本来就很美,这个工友,脚本给你啦~ 按需所取,按需所改???? 更新: 一次性抽多人的: const domArr=document.getElementsByClassName("comment-list")[0].getElementsByClassName("username username") const getLuckyBoys = function(){ ...// 同上 } const FYShuffle_lucyest = function (N) { ...// 同上 return radomNums.slice(0,N); // 中奖序号数组 } const handleLottery =function (N){ // 进行抽奖 console.log("参赛选手:",getLuckyBoys()) const muti_lucyest=FYShuffle_lucyest(N) for(let i=0;i 60 或者 bug,多少都会有点疑惑吧~ 最后,祝大家抽奖总是好运连连!!! 我是掘金安东尼,公众号同名,输出暴露输入,技术洞见生活,再会~

尚美源码教程库提供精美的网站源码下载,小程序、公众号、H5、APP、游戏、直播、支付、区块链、商城、影音、小说等源码大全。
尚美源码教程库 » 公开抽奖算法!公示开奖记录!请叫我“蜻蜓队长”!
赞助VIP 享更多特权,立即登录下载海量资源
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡