编写一个javscript函数 fn,该函数有一个参数 n(数字类型),其返回值是一个数组,该数组内是 n 个随机且不重复的整数,且整数取值范围是 [2, 32]。

function fn(n){
  if(n<2 || n>32) { return; }
  if(!n) { return;}
  //判断n是否为数字
  if(!/^[0-9]+.?[0-9]*$/.test(n)) {
    return;
  }
  var arr = [];
  var min = 2,max = 32;
  for(var i = 0;i<n;i++){
    //生成随机数
    var rnd =Math.floor(Math.random()*(max-min)+min);
    //判断数组里是否含有rnd这个随机数
    if(arr.indexOf(rnd)==-1){
      arr.push(rnd);
    }else{
      i--;
    }

  }
  return arr;
}
console.log(fn(6));

原文地址:https://www.cnblogs.com/ningningwang/p/6515692.html