首页 > 编程语言 >消防安全知识答题活动小程序v4.2.0

消防安全知识答题活动小程序v4.2.0

时间:2023-05-30 20:00:58浏览次数:47  
标签:答题 实现 消防安全 v4.2 管理员 题库 array 乱序

消防安全知识答题活动小程序v4.2.0

v4.2.0

1)JavaScript-数组乱序

数组乱序在实际开发过程中是可能碰到的,比如消防安全知识答题活动小程序中实现乱序抽题或者选项乱序。

我们一开始可能会想到利用数组的sort方法,判断随机出来的0-1的值与0.5的大小,实现排序。该方法实现如下:

var arr = [1, 2, 3, 4, 5, 6];

arr.sort(function(){
    return Math.random() - 0.5;
});

console.log(arr)

上面的实现方法看起来很完美地实现了乱序的需求,但实际的效果如何我们还是要进行测试。

但要实现真正意义上的乱序,这就要提到经典的洗牌算法Fisher–Yates_shuffle。简单的说:就是随机抽一个放到最后。把剩余的数继续抽,继续放到次后......依次执行。

function shuffle(array) {
	var j, x, i;
	for (i = array.length; i; i--) {
		j = Math.floor(Math.random() * i);
		x = array[i - 1];
		array[i - 1] = array[j];
		array[j] = x;
	}
	return array;
}

2)实现选项乱序

按照这个思路和技术方案,先写一段功能代码实现看看,测试调试一下。

js代码:

onLoad: function (options) {
    // ......省略

    let count = this.generateArray(0, this.data.questionList.length - 1); 
    this.setData({
      shuffleIndex: this.shuffle(count).slice(0, 10) // 生成随机题序并进行截取
    })
  },
  /*
  * 数组乱序/洗牌
  */
  shuffle: function (arr) {
    var j, x, i;
    for (i = array.length; i; i--) {
      j = Math.floor(Math.random() * i);
      x = array[i - 1];
      array[i - 1] = array[j];
      array[j] = x;
    }
    return array;
  },
  /**
   * 生成一个从 start 到 end 的连续数组
   */
  generateArray: function (start, end) {
    return Array.from(new Array(end + 1).keys()).slice(start)
  },


v4.1.0

1)支持多选题

消防安全知识答题活动小程序v4.2.0_数组

2)支持填空题

消防安全知识答题活动小程序v4.2.0_数组_02

v3.0.0

1)升级功能:

  • 答题页、结果页界面,增加展示微信头像和昵称栏目√
  • 由仅支持单选,升级为支持单选、判断、多选题型 √
  • 排行榜页排名机制,优化为取个人最佳成绩进行排名√
  • 各界面及功能一些小优化√

2)拓展功能:

  • 注册登录页 √
  • 错题集 √
  • 题库学习 √
  • 查看用户的答题成绩以及答题情况-管理员 √
  • 查看所有用户的答题记录-管理员 √
  • 后台题库管理系统-管理员 √
  • 题目增删查改-管理员 √

3)基于v2.0拓展升级:

  • 排行榜页
  • 活动规则页
  • 答题记录页
  • 首页、答题页、结果页
  • 微信授权登录
  • 获取微信头像和昵称等
  • 实现页面间跳转功能
  • 实现转发分享答题成绩功能
  • 题库随机抽题
  • 查询历史成绩
  • 实现用云开发实现查询题库功能
  • 实现动态题目数据绑定
  • 答题交互逻辑
  • 切换下一题
  • 系统自动判分
  • 提交答卷保存到云数据库集合
  • 答题结果页从云数据库查询答题成绩
  • 题库学习
  • 注册登录页
  • 支持单选、判断题型
  • 错题集
  • 查看用户的答题成绩以及答题情况-管理员
  • 查看所有用户的答题记录-管理员
  • 后台管理-管理员
  • 后台数据监控-管理员


v2.0.0

  • 活动规则页
  • 排行榜页
  • 答题记录页
  • 题库随机抽题
  • 微信授权登录
  • 获取微信头像和昵称等
  • 首页、答题页、结果页
  • 实现页面间跳转功能
  • 实现转发分享答题成绩功能
  • 实现用云开发实现查询题库功能
  • 实现动态题目数据绑定
  • 答题交互逻辑
  • 切换下一题
  • 系统自动判分
  • 提交答卷保存到云数据库集合
  • 查询历史成绩
  • 答题结果页从云数据库查询答题成绩

标签:答题,实现,消防安全,v4.2,管理员,题库,array,乱序
From: https://blog.51cto.com/u_15335909/6381431

相关文章

  • 消防安全知识答题活动小程序v4.1.0
    消防安全知识答题活动小程序v4.1.0v4.1.01)支持多选题.wxml<checkbox-groupclass="checkbox-group"bindchange="checkboxChange"><labelclass="checkbox"wx:for="{{questionList[index].option}}"wx:for-index="key"w......
  • C语言考研简答题汇总
    简述C语言程序的开发步骤及各步的作用编辑,编辑源程序。一般会得到一个扩展名为.c的文件编译,生成二进制的目标代码,即机器代码,由众多个0和1组成的机器指令链接,链接程序,其结果是生成可执行文件运行,程序运行,其结果可能是达到了目的或者出错。简述动态存储变量和静态存储变量的特点静态......
  • 小程序云开发实战——从0到1开发网络安全知识答题积分赛小程序
    小程序云开发实战——从0到1开发网络安全知识答题积分赛小程序一、准备工作1、注册一个小程序账号,主体类型可以选择个人,每个人都可以注册5个小程序账号。在注册成功后,可使用小程序账号登录至微信公众平台,然后获取APPID。点击【开发管理】-【开发设置】,复制APPID。2、下载并安装微......
  • 又一个2W+的答题抽奖活动,复盘复盘总结总结
    又一个2W+的答题抽奖活动,复盘复盘总结总结前段时间太忙了,现在才有时间对一些活动进行复盘总结,这里先对其中一个答题抽奖活动进行复盘总结一下。遇到的一些问题、分析以及其解决方案。答题+抽奖参与者每答对一道题既可获得相对应的分数,分数进行累计达到活动规定的分数后即可参与抽奖......
  • 9.基于Hough变化的答题卡识别 MATLAB程序 答题卡自动阅卷系统通过
    9.基于Hough变化的答题卡识别MATLAB程序答题卡自动阅卷系统通过获取答题卡图像作为系统输入,并通过计算机处理、自动识别填图标记,存入数据库完成阅卷。但是答题卡在运输和使用过程中,容易受到设备、环境等因素的影响,使得图像质量在一定程度上有所下降,影响了自动阅卷的准确率,甚至导......
  • C语言简答题
    C语言的历史:c语言是在20世纪70年代初美国贝尔实验室开发的一种高级编程语言,由B语言发展来,最初是为了Unix操作系统开发的。在80年代中期,由ISO和ANSIC对它进行了一系列的标准化,90年代末,c语言进行了一次重大更新和扩展,被称为c99,使得c语言更加强大和灵活C语言的特点:1,语言......
  • 答题活动小程序V7.0
    答题活动小程序V7.0          答题活动小程序 ......
  • 基于云开发搭建消防安全知识答题活动小程序v3.0
    在全国消防宣传月,不少企事业单位会举办消防安全知识竞赛。若想在短期内,进行消防安全知识的传播,那么答题无疑是有效方式之一。因此我搭建了最新版的优质的消防安全知识答题活动小程序。提炼了典型的业务模型,它可以帮助你快速搭建各种形式的答题软件产品。相信不管你的需求是什么,本项......
  • 答题积分小程序云开发实战-界面交互篇:答题页布局样式与逻辑交互开发
    微信小程序云开发实战-答题积分赛小程序界面交互篇:答题页布局样式与逻辑交互开发答题页原型稿实现思路分析:1)答题未选中状态;2)答题已选中状态,点击确定提交选中结果;3)显示答案以及题目解析,如回答正确,自动进入下一题;如回答错误,停留在当前答题页面;4)每次答完10题,答对分数才会计入积分;5)最后......
  • OpenCV实现答题卡识别
    目录1.定位并规整答题卡(1)图像预处理(2)轮廓检测(答题卡)(3)透视变换2.答题卡结果检测(1)自适应二值化处理(2)轮廓检测(选项)(3)绘制掩模(4)结果本文基于OpenCV实现了捕获答题卡中的每个填涂选项,并将获取的填涂选项与正确选项做对比计算其答题正确率。所涉及的图像操作有:灰度转......