<!DOCTYPE html> <html> <head> <title>超級大LE透模擬</title> </head> <div id="container"> 超級大LE透 <br> 規則:超級大LE透基本投注是指從前區號碼中任選5個號碼,並從後區號碼中任選2個號碼的組合進行投注。其中,前區號碼由01—35共35個號碼組成,後區號碼由01—12共12個號碼組成。每注基本投注金額人民幣2元。 <br> 一等獎 <br> 投注號碼與當期開獎先後區相同,順序不限; <br> 即前5個相同(不限順序),後2個相同(不限順序)... <br> 但願沒理解錯 </div> <br> <button onClick="main()">開始抽獎</button> <body> <script type="text/javascript"> // main(); // 主函數 function main(){ var winNums = getLotteryNums();// 獲取開獎號碼 document.querySelectorAll("button")[0].style.display = "none";// 隱藏按鈕 show("本期開獎號碼:"+JSON.stringify(winNums)); show("開始購買..."); show("購買中...請稍後..."); var buyCount = 1;// 購買次數統計 var isFirstPrizeB = false;// 是否中獎 setTimeout(function(){// 稍微延遲讓dom有寫入時間 while(!isFirstPrizeB){// 若是沒中獎則繼續調用buyLottery()購買彩票 isFirstPrizeB = isFirstPrize(winNums,buyLottery()); buyCount++; } show("購買次數:"+buyCount+"次"); show("花費:"+(buyCount*2)+"元"); },50); } // 隨機獲取7位號碼(前區在[1-35]之間獲取,後區在[1-12]之間獲取) function getLotteryNums(){ var nums = []; while(nums.length < 7){ var oneNum = nums.length >= 5 ? getRandomIntInclusive(1,12) : getRandomIntInclusive(1,35); if(nums.indexOf(oneNum) > -1){ continue; } nums.push(oneNum); } return nums; } // 購買彩票 function buyLottery(){ return getLotteryNums(); } // 是否頭獎中獎 function isFirstPrize(winNums,buyNums){ var winNumsTop = getNumsTop(winNums); var winNumsEnd = getNumsEnd(winNums); var buyNumsTop = getNumsTop(buyNums); var buyNumsEnd = getNumsEnd(buyNums); for(var i in buyNumsTop){ var r = buyNumsTop[i]; if(winNumsTop.indexOf(r) <= -1){ return false; } } for(var i in buyNumsEnd){ var r = buyNumsEnd[i]; if(winNumsEnd.indexOf(r) <= -1){ return false; } } show("中獎了!"); show("你買的號碼是:" + JSON.stringify(buyNums)); return true; } // 獲取前區號碼(前5位) function getNumsTop(Nums){ return Nums.slice(0,5); } // 獲取後區號碼(後2位) function getNumsEnd(Nums){ return Nums.slice(-2); } // 在值域爲[min,max]的集合中獲取一個隨機整數 function getRandomIntInclusive(min, max) { min = Math.ceil(min); max = Math.floor(max); return Math.floor(Math.random() * (max - min + 1)) + min; //The maximum is inclusive and the minimum is inclusive } // 寫內容到dom function show(html){ console.log(html); var oriHtml = document.getElementById("container").innerHTML; document.getElementById("container").innerHTML = oriHtml + "<br>" + html +"<br>"; } </script> </body> </html>
執行結果:javascript