1 // 方法1
2 function method1(arr){
3 for(var i=0,len=arr.length;i<len;i++){
4 var a=parseInt(Math.random()*len);
5 var temp=arr[a];
6 arr[a]=arr[i];
7 arr[i]=temp;
8 }
9 return arr;
10 }
11 // 方法2
12 function method2(arr){
13 var newarr=[];
14 while(arr.length>0){
15 var len=parseInt(Math.random()*arr.length);
16 newarr.push(arr[len]);
17 arr.splice(len,1) //splice(index,num,x,x)函数,index删除元素的位置(必须),num删除的个数(必须),x向数组添加的新元素(可选)。该函数返回被删除元素组成的新数组,同时原始数组也被改变;
18 }
19 return newarr;
20 }
21 // 方法3
22 function method3(arr){
23 arr.sort(function(){
24 return Math.random()-0.5;
25 });
26 console.log(arr);
27 }