2016-04-17 103 views
-4

我有4個跨度和二要填寫thse跨越與我已經有一個陣列上,問題是我沒有在第一跨度的第一個值GOS我想要的是,每個值取隨機跨度值如何在JavaScript中生成一個隨機數字?

<span id="optiona"></span> 
<span id="optionb"></span> 
<span id="optionc"></span> 
<span id="optiond"></span> 

該陣列中的每個值

var op1 = Math.floor(Math.random()*9563); 
var op2 = Math.floor(Math.random()*1457); 
var op3 = Math.floor(Math.random()*8547); 
var answers = [op1,op2,op3,rightAnswer] 

我試圖做的是

var answerDisplay = document.querySelectorAll(".answers span"); 
for(i=0;i<answers.length;i++){ 
    answerDisplay[i].textContent = answers[rand()]; 
} 
function rand(){ 
    var randomN = Math.floor(Math.random()*answers.length); 
    return randomN; 
} 

我的問題是如何產生一個隨機數w它重複?

+0

你甚至嘗試使用Google的問題嗎? –

+0

當這些值已經是隨機值時,爲什麼你會希望「每個值都需要一個隨機跨度」? – C14L

回答

0
var answerDisplay = document.querySelectorAll(".answers span"); 
var assigned = []; 
for(i=0;i<answers.length;i++){ 
    var index = newRand(assigned); 
    assigned.push(index); 
    answerDisplay[i].textContent = answers[index]; 
} 
function newRand(assigned){ 
    var r = rand(); 
    while (assigned.indexOf(r) >= 0){ 
     r = rand(); 
    } 
    return r; 
} 
function rand(){ 
    var randomN = Math.floor(Math.random()*answers.length); 
    return randomN; 
} 
相關問題