javascript生成不重复的随机数
发布时间:2016-01-28 来源:查字典编辑
摘要:学习jQuery过程中一道测试题。初始时:元素中仅显示5个元素,其中包含还包括最后一个元素,元素中的显示"更多"字符.当点击"更多"链接时,...
学习jQuery过程中一道测试题。
初始时:元素中仅显示5个元素,其中包含还包括最后一个元素,元素中的显示"更多"字符. 当点击"更多"链接时,自身内容变为"简化",同时,元素中显示全部的元素. 当点击"简化"链接时,自身内容变为"更多",同时,元素中仅显示包含最后一个元素在内的5个元素.核心点:他没讲需隐藏哪几个
元素啊,那么我希望列出8个元素,点简化随机隐藏前7个元素中的3个。思路:
①从0~6中生成3个随机数。
②判断3个随机数是否相等,不相等则执行隐藏操作。
③3随机数有重复,则重新执行函数。
实现:生成0~6的一个随机数
复制代码 代码如下:var ran1=parseInt(Math.random()*7); //Math.random()生成[0,1)的一个随机数
完整代码:
收获一:
复制代码 代码如下:var ran=parseInt(Math.random()*(max-min+1)+min); //生成一个[min,max]区间的一个随机数
收获二:
反思了下,决定写个在一定[min,max]区间,生成n个不重复的随机数的封装函数。
思路一:先生成n个[min,max]区间随机数,比较是否重复,如重复则返回,再次执行。
演示地址:/yupuyehuqa/edit?html,js,output
封装函数:
function my_ran(n,min,max){ var arr=[]; for(i=0;i