Jquery 如何从math.random中排除单个数字

Jquery 如何从math.random中排除单个数字,jquery,math,random,Jquery,Math,Random,我需要jquery生成一个数组,该数组只包含通过复选框选中的数字。换句话说,我需要math.random来排除未检查的答案。当我克服这个问题时,将会有更多的复选框 if ($('#check1') .is(':checked')) { var nrI = "1"; } else { var nrI = ""; } if ($('#check2').is(':checked')) { var nrII = "2"; } else { var nrII = ""; }

我需要jquery生成一个数组,该数组只包含通过复选框选中的数字。换句话说,我需要
math.random
来排除未检查的答案。当我克服这个问题时,将会有更多的复选框

if ($('#check1') .is(':checked')) {
    var nrI = "1";
} else {
    var nrI = "";
}
if ($('#check2').is(':checked')) {
    var nrII = "2";
} else {
    var nrII = "";
} 

var numbrid = [nrI,nrII];

if (nrI + nrII == 0) {
    var numRand = Math.floor((Math.random()*2)+1);
} else {
    var numRand = Math.floor((Math.random()*numbrid.length)+1);
}   
$("#number") .text(numRand);
试一试

我不确定问题的第二部分,即你想用麻木做什么

演示:

如果您的要求与@AndyRay comment相同,则

var numbrids = $('input[id^="check"]:checked').map(function(index, el) {
    return $(el).attr('id').substring(5);
}), numRand;

if (numbrids.length) {
    numRand = numbrids [Math.floor((Math.random() * numbrids.length))];
} else {
    numRand = 0;
}
$("#number").text(numRand);
演示:

试试看

我不确定问题的第二部分,即你想用麻木做什么

演示:

如果您的要求与@AndyRay comment相同,则

var numbrids = $('input[id^="check"]:checked').map(function(index, el) {
    return $(el).attr('id').substring(5);
}), numRand;

if (numbrids.length) {
    numRand = numbrids [Math.floor((Math.random() * numbrids.length))];
} else {
    numRand = 0;
}
$("#number").text(numRand);

演示:

给定的代码是否工作正常此问题的正确解决方案是将所有可能的有效数字放入一个数组中(复选框中的所有数字),并选择一个从0到数组长度的随机数整数。给定的代码是否工作正常此问题的正确解决方案是将所有可能的有效数字放入一个数组中(复选框中的所有数字),并选择一个从0到数组长度的随机数整数。最后一个代码似乎可以根据需要在JSFIDLE中工作。现在我只需要找出代码。最后,我想完成类似的工作,但我已经学习jQuery一周了,唯一可以学习的地方是googlelast代码,可以根据需要在JSFIDLE中使用。现在我只需要找出代码。最后,我想完成类似的工作,但我已经学习jQuery一周了,唯一可以学习的地方是谷歌