运用ASCII码判断数值是否超出范围

首先,什么是ASCII码? ASCII码全称为美国信息交换标准代码,它是现今最通用的信息交换标准,作用很是广泛,此次我便要借助它的力量去完善项目中的一些功能。

近期在制作一个试题导入的功能,既然是试题,那么就会有三个部分:题干信息、选项(A、B、C)、正确答案。其中,需要借助一下ASCII码的作用对试题答案的部分进行处理。假设当前新增的试题的选项只有A、B两个答案,试想一下,若是用户在新增试题信息的过程中在正确答案栏写了一个答案E,但是选项中却又并不存在E这个选项,导致试题答案无效的问题。为了避免这类情况的发生,就要定义一个判断,判断用户输入的试题答案是否在选项中真实存在。这就要运用ASCII码的作用来完成这个判断了。

在一开始便限制了试题最多只能有六个选项,因此我首先排除的便是选项A - F以外的字母答案,通过ASCII进行排除。先来看看码数对照表,其中A的ASCII码为97,F的ASCII码为102,如图:
在这里插入图片描述在这里插入图片描述运用ASCII码判断数值是否超出范围_第1张图片
接着便可以获取用户当前输入的试题答案的ASCII码值,通过charCodeAt()方法获取:

var RightKeyCode = ArrRightKey[i].charCodeAt();

值获取成功后,便可以执行最后一层判断值:当前答案的ASCII码值是否超出所限制的范围,若是当前正确答案的ASCII码大于[65(A的ASCII码) + (当前选项框的长度 - 1)],则弹出提示框提醒用户所填写的答案超出了当前选项的范围,再将提示返回:

if (RightKeyCode > 65 + (inputs.length - 1))
{
layer.msg(“正确答案超出了选项的范围!”);
return;
}

方法定义完成,开始测试。先将题目类型定义为判断题,众所周知判断题一般来说只有两个答案(A、B),要么√,要么×,接着我在答案文本框中输入(D、F),点击保存看看是否会触发提示框:
在这里插入图片描述
运用ASCII码判断数值是否超出范围_第2张图片
如图所示,提示框被触发,说明方法判断的结果是正确的且没有发现异常,完成。
在这里插入图片描述

你可能感兴趣的:(运用ASCII码判断数值是否超出范围)