我想用一个随机数生成一个数组,每个数都是不同的。 有人能帮我解决这个问题吗? 谢了。
var array = [];
for(var i = 0;i < 5; i++){
var a = Math.floor(Math.random() * 5);
array.push(a);
}
console.log(array);
null
var array = [];
for (var i = 0; i < 10; i++) {
var a = Math.floor(Math.random() * 10);
while (array.indexOf(a) !== -1) {
a = Math.floor(Math.random() * 10);
}
array.push(a);
}
console.log(array);
使用此实现,您将确保不会在var array
中添加一个以上的现有数字。
null
var array = [];
function randomNumber(array) {
var a = Math.floor(Math.random() * 5);
var found = array.filter(el => el == a);
if(found.length) return randomNumber(array);
return a;
}
for(var i = 0; i < 5; i++){
array.push(randomNumber(array));
}
console.log(array);
Math.Random()
返回一个数字一个介于0和; 1.因此,与5相乘,然后进行Math.flood
运算,可以得到一个介于0和; 4.因此数组可能包含重复数字
null
var array = [];
for (var i = 0; i < 5; i++) {
var a = parseInt(Math.random() * i * 100, 10);
array.push(a);
}
console.log(array);