ZKX's LAB

js数组随机抽取两个 JavaScript问题:一个有一百个随机数字的数组中(可能有重复数字),随机抽取十个,且这十个数字不重复。

2020-07-22知识10

用js如何实现随机返回数组的一个元素 var a=[1,2,3,3,4,5,6,7,8,9];function sendNum(arr){return arr[Math.floor(Math.random()*arr.length)];}sendNum(a);这样就可以实现每次返回是一个随机数组中的一个数。主要用的就是random的方法。random方法,是返回(0,1]的数,但取不到1,所以用Math.floor向下取整。怎么用js随机抽取一位获奖者 新建一个html文件,命名为test.html ,用于实现随机抽取获奖者的功能。在test.html页面中,使用input按钮定义一个文本框,用于显示获奖者的姓名,同时,使用button标签创建。js怎么在这个二维数组中,随机抽取一组,或者随机获取该数组的下标 给你个提示吧,你可以随机出位置,然后就行了例子:StrRand=\";int i,j;Random random=new Random(DateTime.Now.Millisecond);i=random.Next(a[0].length);j=random.Next(a[0][0].length);最终的得出的随机数a[i][j]js数组随机抽取显示,怎么控制指定元素显示的概率 可以利用Math对象的random方法。它将返回一个0到1之间的浮点类型数。但仅仅这个还不够,必须还要有一定的算法才可以实现一定范围取值。Math.floor(Math.random()*x)/返回0到x-1的随机整数。Math.floor(Math.random()*x+y)/返回0+y到x-1+y的随机整数其中floor方法是用来取浮点类型的整数部分。顺便说一下,JS很难控制抽奖抽中的概率,毕竟还没有这种算法。我有一个建议,就是将同事能抽的数字范围增大,孩子能抽的数字范围减小。比如中奖号码为96,则同事可写:Math.floor(Math.random()*100+50)/取50到149孩子可这样写:Math.floor(Math.random()*70+70)/取70到139测试结果如图(这个结果是10次抽到号码需要的次数的平均值,结果四舍五入):这样孩子的抽中概率比同事的抽中概率要大了。JavaScript问题:一个有一百个随机数字的数组中(可能有重复数字),随机抽取十个,且这十个数字不重复。 比如这个数组有100多个值var arr=new Array(1,3,2,3,5,5,4,6,8,9,10,11,11,12,12,13,13,14);获取数组中的随机值函数function rand(arr){var num=parseInt(Math.random()*(arr.length));return arr[num];}创建一个新数组arr2=new Array();从arr中抽出10个不重复的值赋予arr2var i=1;while(i){num=rand(arr);判断num随机值在arr2中是否已存在if(arr2.indexOf(num)=-1){arr2[i]=num;document.write('抽取的第'+i+'个数字为'+num+'');alert('抽取的第'+i+'个数字为'+num);i+;}else{alert('抽取的结果中已存在'+num+'需要重新获取');}}

#floor#数组#js#arr#数组公式

随机阅读

qrcode
访问手机版