
方法一
function shuffle(array) {
var copy=[],
n = array.length,
i;
// 如果还剩有元素。。
while (n) {
// 随机选取一个元素
i = Math.floor(Math.random() * array.length);
if(i in array){
copy.push(array[i]);
delete array[i];
n--;
}
}
return copy;
}//我认为效率不高
方法二
function shuffle(array) {
var copy=[],
n = array.length,
i;
// 如果还剩有元素。。
while (n) {
// 随机选取一个元素
i = Math.floor(Math.random() * n--);
copy.push(array.splice(i,1)[0]);
//n--;
}
return copy;
}//还可以
方法三
function shuffle(array) {
var temp,
n = array.length,
i;
// 如果还剩有元素。。
while (n) {
// 随机选取一个元素
i = Math.floor(Math.random() * n–);
t=array[i];
array[i]=array[n];
array[n]=t;
}
return array;
}




近期评论