JavaScript红球一共6组,每组从1-33中抽取一个,六个互相不重复;蓝球是从1-16中抽取一个数字。红球和篮球共同组成的双色球。要求在此基础上设计网页实现双色球摇号的功能
时间: 2024-06-13 07:09:44 浏览: 13
以下是JavaScript实现双色球摇号的代码:
```javascript
// 生成1-33的数组
var redArr = [];
for (var i = 1; i <= 33; i++) {
redArr.push(i);
}
// 生成1-16的数组
var blueArr = [];
for (var i = 1; i <= 16; i++) {
blueArr.push(i);
}
// 从数组中随机取出n个元素
function getRandomArr(arr, n) {
var result = new Array(n),
len = arr.length,
taken = new Array(len);
if (n > len) {
throw new RangeError("getRandomArr: more elements taken than available");
}
while (n--) {
var x = Math.floor(Math.random() * len);
result[n] = arr[x in taken ? taken[x] : x];
taken[x] = --len in taken ? taken[len] : len;
}
return result;
}
// 摇号函数
function shake() {
var red = getRandomArr(redArr, 6).sort(function(a, b) {
return a - b;
});
var blue = getRandomArr(blueArr, 1);
return {
red: red,
blue: blue
};
}
// 点击按钮摇号
document.getElementById("btn").addEventListener("click", function() {
var result = shake();
alert("红球号码为:" + result.red.join(", ") + ",蓝球号码为:" + result.blue);
});
```
在HTML中添加一个按钮,点击按钮即可摇号:
```html
<button id="btn">摇号</button>
```