Javascript 如何将此测验随机化

Javascript 如何将此测验随机化,javascript,html,css,arrays,random,Javascript,Html,Css,Arrays,Random,我尝试了几种方法,用数学随机作为函数,将这些测验问题随机化,但我恐怕我太初学了,无法理解我做错了什么。我怎样才能从这次测验中随机抽取这些问题 有没有一种简单的方法可以将问题排成一个数组,然后在它们出现在浏览器上时随机化?我在这个例子中只提出了两个问题,以使它更容易,但可能会提出更多的问题 var quiztitle=“计算机硬件:视觉测验!”; /** *在此处设置有关问题的信息。正确的答案字符串需要匹配 *正确的选择完全正确,因为它进行字符串匹配。(区分大小写) * */ 变量测验=[{ “

我尝试了几种方法,用数学随机作为函数,将这些测验问题随机化,但我恐怕我太初学了,无法理解我做错了什么。我怎样才能从这次测验中随机抽取这些问题

有没有一种简单的方法可以将问题排成一个数组,然后在它们出现在浏览器上时随机化?我在这个例子中只提出了两个问题,以使它更容易,但可能会提出更多的问题

var quiztitle=“计算机硬件:视觉测验!”;
/**
*在此处设置有关问题的信息。正确的答案字符串需要匹配
*正确的选择完全正确,因为它进行字符串匹配。(区分大小写)
*
*/
变量测验=[{
“问题”:“Q1:这个游戏叫什么名字?”,
“图像”:https://lh3.googleusercontent.com/N6XB3KXpnQ4OAz5jDJi74XM8dvwfJxiwrObSLpd7hdy3HzCxW-cZY0Mu5hJORtjeqa0=h900",
“选择”:[
“地雷船”,
“使命召唤”,
“厄运”,
“托卡博卡”
],
“正确”:“地雷船”,
“解释”:“这是一张MineCrosft中僵尸的照片!”,
}, {
“问题”:“问题2:这是什么游戏?”,
“图像”:https://assets.vg247.com/current//2015/03/crossy_road_header_1.jpg",
“选择”:[
“跑麻袋小子”,
“使命召唤”,
“地雷船”,
“十字路口”
],
“正确”:“十字路口”,
“解释”:“一只象征性的小鸡横穿马路的照片”,
},
];
/*******无需在此行下方进行编辑*********/
var currentquestion=0,
分数=0,
submt=真,
挑选;
jQuery(文档).ready(函数($){
/**
*HTML编码函数,用于alt标记和属性,以防止混乱
*显示在标记属性中的数据。
*/
函数htmlEncode(值){
返回$(document.createElement('div')).text(value.html();
}
/**
*这会将每个问题的单独选项添加到ul选项块中
*
*@param{choices}对每个问题的选项进行数组
*/
函数addChoices(选项){
如果(选项的类型!=“未定义”&&&$。类型(选项)=“数组”){
$(“#选择块”).empty();
for(var i=0;i正确!”+htmlEncode(测验[currentquestion][“解释]));
分数++;
}否则{
$('.choice').eq(choice).css({
“背景色”:“D92623”
});
$(“#解释”).html(“不正确。”+htmlEncode(测验[currentquestion][“解释]));
}
当前问题++;
$(“#提交按钮”).html('NEXT QUESTION»;')。on('click',function(){
if(currentquestion==quick.length){
endquick();
}否则{
$(this).text('Check Answer').css({
“颜色”:“222”
}).off('click');
nextQuestion();
}
})
}
/**
*为每个按钮设置事件侦听器。
*/
函数设置按钮(){
$('.choice')。在('mouseover',function()上{
$(this.css)({
“背景色”:“e1e1e1”
});
});
$('.choice')。on('mouseout',function(){
$(this.css)({
“背景色”:“fff”
});
})
$('.choice')。在('click',function()上{
picked=$(this.attr('data-index');
$('.choice').removeAttr('style').off('mouseout mouseover');
$(this.css)({
“边框颜色”:“222”,
“字体大小”:700,
“背景色”:“C1C1”
});
如果(子MT){
submt=假;
$(“#提交按钮”).css({
“颜色”:“000”
}).on('单击',函数()){
$('.choice')。关闭('click');
$(此).off('click');
处理问题(挑选);
});
}
})
}
/**
*测验结束后,显示一条消息。
*/
函数endquick(){
$(“#解释”).empty();
$('问题').empty();
$(“#选择块”).empty();
$(“#提交按钮”).remove();
$(“#问题”).text(“你得到“+分数+”出“+测验。长度+”正确。”);
$(document.createElement('h2')).css({
“文本对齐”:“居中”,
“字体大小”:“4em”
}).text(Math.round(分数/测验长度*100)+'%')。insertAfter(“#问题”);
}
/**
*第一次运行并创建测验的所有元素
*/
函数init(){
//添加标题
if(quiztitle的类型!=“未定义”&&&$.type(quiztitle)==“字符串”){
$(document.createElement('h1')).text(quiztitle).appendTo('#frame');
}否则{
$(document.createElement('h1')).text(“测验”).app