js 纯数字不重复排列的另类方法

  参考无忧cosin的方法后(多谢),整理的方法如下

  

复制代码 代码如下:

  //一段随机数,模拟用

  var baseNum=[];

  for(var i= 0;i< 100000 ;i++){

  random = Math.floor(Math.random()*i);

  baseNum.push(random);

  }

  var baseNumLen = baseNum.length;

  var numSubscript = [];

  //将数字作为下标和值放到另一数组内,实现排序和不重复

  for (var i =0;i<basenumlen ;i++){

  if(numSubscript[baseNum[i]] == undefined)numSubscript[baseNum[i]]=baseNum[i];

  }

  //去除空的值并颠倒一下

  baseNum = numSubscript.join(',').replace(/([,]+)/ig, ',').split(',').reverse();

  document.write(baseNum);

  题外:

  假如数组是自己生成,客服果果写的这段代码就很好了。(牛逼)

  

复制代码 代码如下:

  var baseNum=[],tmp={},v;

  for(var i= 0;i< 100000 ;i++){

  tmp[Math.floor(Math.random()*i)]=true;

  };

  i=0;

  for (var k in tmp){

  baseNum[i++]=k;

  };

  baseNum.sort(fn);

  function fn(x,y) {

  return x-y>0?1:-1

  }

  document.write(baseNum.join(''));