2017-03-27 13 views
0

ランダムな質問を表示するスクリプトを作成しようとしています。私はそれを行う方法を理解することはできません。JavaScriptのランダムオブジェクト

これは私のNOT(要素には何も書き込みません=)WORKINGコードです:

function theQ(quest, ans) { // question constructor 
    this.question = quest; 
    this.answer = ans; 
} 
var quest1 = new theQ("1+1", "2"); // object 1 
var quest2 = new theQ("2+2", "4"); // object 2 
var container = document.getElementById("rendomQuestion"); // display 
var randomNumber = Math.random(); // randomize 
var numQuestion = Math.floor(randomNumber * theQ.length); // between theQ number of objects 
container.innerHTML += quest+numQuestion.question; // write the chosen question. 

編集が..私がここで間違ってやっているものを私に教えてください - これは私のHTMLです:

<p id="rendomQuestion"></p> 
+3

「機能しない」と定義してください。どのようなエラーが出ますか?あなたのHTMLも投稿してください。私たちは[mcve] – j08691

+0

が必要です。それはそこにひどい重複です(http://stackoverflow.com/q/5117127/251311でした)。申し訳ありませんが、コミュニティが削除されています.OPが必要としている場合を除き、完全に関連性がありません。 – zerkms

+0

@epascarello OPには可変変数は必要ありませんが、2つの間で1つの値を選択するのに役立ちます。 – zerkms

答えて

2

あなたは(二つの質問の)配列を使用する必要があります。

function theQ(quest, ans) { // question constructor 
 
    this.question = quest; 
 
    this.answer = ans; 
 
} 
 
// *** Make it an array: 
 
var quests = [new theQ("1+1", "2"), 
 
       new theQ("2+2", "4")]; 
 
var container = document.getElementById("rendomQuestion"); 
 
var randomNumber = Math.random(); 
 
var numQuestion = Math.floor(randomNumber * theQ.length); 
 
// *** Now use array notation: 
 
container.textContent = quests[numQuestion].question;
<p id="rendomQuestion"></p>

+0

なぜこれを控除したのですか? – zerkms

+0

は魅力的な作品です。私は、ユーザーが正しい答えを確認するためにオブジェクトを使用しようとします。ありがとうございました。 –

+0

@trincotこれを見ていただけたらhttp://stackoverflow.com/questions/43086730/create-random-arrays-in-javascript –

関連する問題