1. for循环向另一个数组里面随机丢数据
var arr=[]; //存放1-20
var randomArr=[]; //这个数组存放乱序数字
for(var i=0;i<20;i++){
arr.push(i+1);
}
for(var i=0;i<arr.length;i++){
getNoRepeatNum();
}
console.log('原数组',arr);
console.log('现数组',randomArr);
function getNoRepeatNum(){
var random = parseInt(arr.length * Math.random());
for(var i=0;i<randomArr.length;i++){ // 判断是否有重复
if(randomArr[i]==random){
return getNoRepeatNum();
}
}
randomArr.push(random);
}
2.sort打乱数组
var arr=[];//存放1-20
for(var i=0;i<20;i++){
arr.push(i+1);
}
console.log('原数组',arr);
var randomNumber = function(a,b){
// return a - b //从小到大排列
// return b - a //从大到小排列
return 0.1 - Math.random()
// 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
// 若 a 等于 b,则返回 0。
// 若 a 大于 b,则返回一个大于 0 的值。
}
arr.sort(randomNumber)
console.log('现数组',arr);