2016-11-20 15 views
2
var questions =[ 
new Question ("Who is the president of Czech Republic?", ["Donald Trump", "Andrej Kiska", "Milos Zeman", "Angela Merkel"], "Milos Zeman"), 
new Question ("The capital of Czech Republic is:", ["Brno", "Ostrava", "Hradec Kralove", "Prague"], "Prague"), 
new Question ("Which food is not common Czech food?", ["Cevapcici", "Svickova", "Trdelnik", "Tatarak"], "Cevapcici")]; 
var quiz = new Quiz(questions); 
populate(); 

このクイズの質問の順序をランダム化するにはどうすればよいですか?ここで働いてサンプルです:乱数(demo)を使用して多次元配列でクイズ質問の順序をランダム化する方法は?

https://jsfiddle.net/yhosftnt/

答えて

0

ソートそれらは:

this.questions = [].concat(questions).sort(function() { 
    return Math.random() - Math.random(); 
}); 

[].concat(questions)は、新しい配列を作成しますので、元の配列は変更されません。

+0

ありがとう、非常にエレガントなソリューション! –

+0

あなたは大歓迎です:) –

+0

これは文字列の配列なので、もう少し小さなことは、どのようにランダムな質問の数を制限するのでしょうか?この例では、3つの質問のうち2つだけを表示したいとします。 –