实现js随机数不重复的有效方法
这是关于js随机数的第二篇文章了,在上一篇文章《js随机数Math.round()的用法详解》中,我们产生的随机数,但是发现这些随机数竟然会重复,然而实际应用中有时是需要不重复的随机数,这可咋办?那么本文给出实现js随机数不重复的有效方法。
有效方法的思路:可以利用数组的特性,先创建一个数组arr,用for循环给数组arr赋值,然后用Math.random()将数组值打散,最后用for循环依次输出数组值, 就这样可以做到js产生随机数永不重复,效率高且耗时短,具体的请看如下代码:
<script type="text/javascript"> var count=10; //随机数的数量 var arr=new Array; //定义一个arr数组 //给arr数组赋值 for (var i=0;i<count;i++){ arr[i]=i+1; } arr.sort(function(){ return 0.5 - Math.random(); }); for (var i=0;i<count;i++){ //输出随机数 document.write("第"+i+"个随机数:",arr[i]+" <hr> "); } </script>
结果:
除注明外的文章,均为来源:老汤博客,转载请保留本文地址!
原文地址:https://tangjiusheng.cn/js/129.html
原文地址:https://tangjiusheng.cn/js/129.html
大家都在看