Javascript测验结果计算/生成
Javascript quiz result calculation/generation
我为rails应用程序编写了一个javascript测试,每个问题只能在两个答案之间进行选择,我现在正试图扩大它的规模,以便有四个问题和四个结果页面,但到目前为止还没能使它发挥作用。有人能帮忙吗?我尝试过更改var计算,但到目前为止还没有成功。
function generateResult(answers) {
var panda = bear = 0;
for(var i =0; i < answers.length; i++){
if(answers[i] == 1){
bear++;
}
else {
panda++;
}
}
if(bear > panda) {
return "sbear.html";
}
else if(bear > elephant) {
return "sbear.html";
}
else if(bear > alpacha) {
return "sbear.html";
}
else if(panda > bear) {
return "sbear.html";
}
else if(panda > elephant) {
return "sbear.html";
}
else if(panda > alpacha) {
return "rpanda.html";
}
else if(alpacha > bear) {
return "sbear.html";
}
else if(alpacha > panda) {
return "sbear.html";
}
else if(alpacha > elephant) {
return "alpach.html";
}
else {
return "eleph.html";
}
}
var answers = [1,2,3,4,2,2,2,3,4]
function generateResult(answers) {
var animals = {
1: 'bear',
2: 'panda',
3: 'elephant',
4: 'alpacha'
}
var counts = [0,0,0,0];
answers.forEach(function(answer){
counts[answer-1]++;
});
return animals[counts.indexOf(Math.max(...counts))+1] + '.html';
}
结果:
genarateResult(答案);//'panda.html'
我不确定这些值是否是bear/panda/ephant/alpac(h)a的正确值,但您可以很容易地交换这些值。
function generateResult(answers) {
// initialize ALL variables
var panda = bear = elephant = alpacha = 0;
for(var i =0; i < answers.length; i++){
if(answers[i] == 1){ // assuming bear == 1
bear++;
}
else if(answers[i] == 2) { // assuming panda == 2
panda++;
}
else if(answers[i] == 3) { // assuming elephant == 3
elephant++;
}
else { // assuming alpacha == 4
alpacha++;
}
}
if (bear > alpacha && bear > panda && bear > elephant) {
return "sbear.html";
}
else if (alpacha > bear && alpacha > panda && alpacha > elephant) {
return "alpach.html";
}
else if (panda > alpacha && panda > bear && panda > elephant) {
return "rpanda.html";
}
else {
return "eleph.html";
}
}
相关文章:
- 如何在生成下载文件时显示加载动画
- 自动生成的用户名
- Javascript生成的表单未提交
- 比较从函数和生成的日期对象
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 试图在引导模式内动态生成图表,得到offsetWidth错误
- 根据元素和容器大小计算边距
- 从Rally获取一个特定的标记,以便计算另一个字段中的值
- 正在获取生成的PHP td值
- onKeyUp 事件计算不适用于 PHP 生成的表单中的以下行,除了第一行
- 使用Selenium网络驱动程序计算ng repeat生成的选项卡集中的选项卡数
- 计算对象的值之和's基于另一个对象的属性'动态生成的属性
- 计算随机生成的六边形的6个顶点
- 计算使用AJAX生成的输入类型的总和
- 在javascript中生成随机字母,并计算每个字母出现的次数
- 计算htmltextwwriter (c#)生成的html表的高度
- Javascript测验结果计算/生成
- 使用AngularJS模板实现用户生成的用于计算的JavaScript
- 计算行数以生成一定数量的选项卡