一个30个数的数组,每次随机取6位,第一次必须的数一定有0,1,2; 总共取5次,全部取完,也是为了让每个数字都取到。5次之后又重新开始取数。
这个怎么实现呢??
用JavaScript实现。
一个30个数的数组,每次随机取6位,第一次必须的数一定有0,1,2; 总共取5次,全部取完,也是为了让每个数字都取到。5次之后又重新开始取数。
这个怎么实现呢??
用JavaScript实现。
const dig = function* (n, size, head) {
let arr = Array(head).fill(1).map((t,i) => i).concat(Array(n - head).fill(1).map((i,index) => index + head).sort(() => Math.random() - .5))
while (arr.length) {
yield arr.splice(0, 6).sort(() => Math.random() - .5)
}
}
思路
第一次有 0 1 2 那随机数就的从3 - 29 开始算 第一次获取3个随机数
然后至于0 1 2 排序什么的看你 给使用者错觉感,是随机数
然后6-29就可以依次随机获取 6个随机数
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
这是我的一点儿小想法,直接复制粘贴运行便可看到效果,至于获取之后再次重新获取,把生成数组的那个循环放在一个函数里面重复调用即可:
希望我的回答对你有所帮助!