1.编写一个javascript函数fn,该函数有一个参数n(数字类型),其返回值是一个数组,该数组内是n个随机且不重复的数组,且整数取值范围为[2,32];
1 <script> 2 function fn(n){ 3 var arr = []; 4 if(n&&(typeof(n)=="number"?true:(parseInt(n)?true:felse))){//判断n是否存在,n是否是number类型,n是否可以装换为数字 5 for(var i = 0;i<n;i++){ 6 if(i>30) return arr;//如果n大于了取值范围将会死循环,因为要不重复 7 var newNum = Math.ceil((Math.random()*30)+2);//2-32(随机数是[0,1)); 8 if(arr.indexOf(newNum)<0)//判断获取到的数字数组中是否存在,存在则i--重新来过,否则个数组赋值 9 arr[i]=newNum 10 else i--; 11 } 12 } 13 return arr; 14 } 15 console.log(fn(5)); 16 </script>
原文:http://www.cnblogs.com/sunnie-cc/p/6514012.html