网站地图    收藏   

主页 > 前端 > javascript >

javascript 数组随机排序简单实例

来源:自学PHP网    时间:2014-09-19 14:47 作者: 阅读:

[导读] 在js中没有像php一样的直接可以利用相关函数对数据进行随机排序了,在这里我们来写一个自定义的数组随机排序函数。...

javascript数组随机排列的方法比较多,下面是比较简单的一种:

 代码如下 复制代码

function randomSort(a,b){
    return Math.random()>.5 ? -1:1;
}


随机数大于0.5,返回-1,即a排在b前;随机数若小于0.5,则返回1,即b排在a前。

某公司的一道面试题:把1-1000数字随机打乱顺序,放在JS数组中,然后写一函数:指定任意一个1-1000的数,快速从数组中找出该数对应的下标索引号。

 代码如下 复制代码

var aArr = [];
for(var i=0; i<100;i++){
    aArr.push(i); //aArr[i] = i;
}
function randomSort(a,b){ //数组元素随机排列
    return Math.random()>.5 ? -1:1;
}
aArr.sort(randomSort);
 
function showIndex(num){
  for(var j=0;j<aArr.length;j++){
    if(aArr[j]==num){
      console.log(j); //输出到控制台
      break;
    }
  }
}
showIndex(43);


要打乱数组有很多方法

 代码如下 复制代码

function randomsort(a, b) {
        return Math.random()>.5 ? -1 : 1;

//用Math.random()函数生成0~1之间的随机数与0.5比较,返回-1或1
}
var arr = [1, 2, 3, 4, 5];
var arr2 = arr.sort(randomsort);
alert(arr2);


arrayobj.sort([sortfunction])

此方法将 Array 对象进行适当的排序;在执行过程中并不会创建新的 Array 对象。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论