我想在1-100之间生成一个随机数,但我只想每次生成一次这样的数字。我有一个循环,运行3次运行.Math,然后将其推入一个数组。但是我不想要它不止一次产生相同数字的情况。
我在allAnswers []数组中放了21,因为这样可以保持一致。有没有办法生成然后检查该数组是否存在,然后再次运行.math?
的
的function buttonGenerator(){
var allAnswers = [21],
randomizer = [];
// Generates 3 random answers
for(a = 0 ; a < 3; a++) {
wrongAnswers = Math.floor((Math.random() * 100) + 1);
allAnswers.push(wrongAnswers);
}
// Generates random buttons while inputting the correct and incorrect answers randomly
for(i = 0 ; i < 4; i++) {
var buttonArea = $("#answerOptions");
input = $('<button class="col-xs-6 btn btn-primary"></button>');
input.appendTo(buttonArea);
}
shuffle(allAnswers);
console.log(allAnswers);
}
buttonGenerator();
的
答案 0 :(得分:1)
在推送之前使用indexOf
检查数组是否具有值:
if (allAnswers.indexOf(wrongAnswers) === -1) {
allAnswers.push(wrongAnswers);
}