JS使用random随机数实现简单的四则算数验证

server/2024/12/22 7:47:54/

1.效果图

请添加图片描述

2.代码实现

index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><input type="text" id="input" ><span id="num1"></span><span id="op"></span><span id="num2"></span><span>=</span><span id="sum">?</span><button id="btn" onclick="javascript language-javascript">sumbit()">提交</button><script src="./js/index.js"></script>
</body>
</html>

index.js

javascript">let num1_text = document.getElementById(`num1`)
let num2_text = document.getElementById(`num2`)
let sum_text = document.getElementById(`sum`)
let input = document.getElementById(`input`)
let op_text = document.getElementById(`op`)
let num1, num2, op
//生成随机数的方法
let rand = (min, max) => {//传入随机数范围result= parseInt((max-min+1)*Math.random()+min)//将结果转为整数return result //返回结果
}
//初始化方法
let init = () => {num1 = rand(1, 10)//生成一个1~10之间的随机数赋给num1num2 = rand(1, 10)//生成一个1~10之间的随机数赋给num2switch (rand(1, 4)) {//随机生成四则运算符case 1: op_text.textContent = `+`,op=`+`; break//当随机数为1为+,并将值赋给opcase 2: op_text.textContent = `-`, op = `-`; breakcase 3: op_text.textContent = `*`, op = `*`; breakcase 4: op_text.textContent = `/`, op = `/`; break}num1_text.textContent = `${num1}`//将当前num1的值显示到前端对应的标签中num2_text.textContent = `${num2}`
}
//页面加载时先执行一次
init()
//声明一个点击事件的方法
let sumbit = () => {//根据上面随机到的op,num1,num2结合获取到前端输入框中的值进行判断if (op == `+`&& parseInt(input.value)==(num1+num2)) alert("验证成功")else if (op == `-` && parseInt(input.value) == (num1 - num2)) alert("验证成功")else if (op == `*` && parseInt(input.value) == (num1 * num2)) alert("验证成功")else if (op == `/` && parseInt(input.value) == parseInt(num1 / num2)) alert("验证成功")else alert("验证失败")//提交后再次初始化init()
}

http://www.ppmy.cn/server/152176.html

相关文章

axios的使用

1、axios的基本使用 1.1、简介 说到axios我们就不得不说下Ajax。在旧浏览器页面在向服务器请求数据时&#xff0c;因为返回的是整个页面的数据&#xff0c;页面都会强制刷新一下&#xff0c;这对于用户来讲并不是很友好。并且我们只是需要修改页面的部分数据&#xff0c;但是…

如何从 ASP.NET Core IIS上传大文件一些配置

使用ASP.NET Core上传文件&#xff0c;可以参考官方文档&#xff1a; 使用缓冲模型绑定上传小文件到物理存储。 默认情况下&#xff0c;Windows IIS 将maxRequestLength和maxAllowedContentLength分别限制为 4096 KB 和 30,000,000 字节。要上传大于这些限制的文件&#xff0c;…

LabVIEW伸缩臂参数监控系统

LabVIEW开发伸缩臂越野叉车参数监控系统主要应用于工程机械中的越野叉车&#xff0c;以提高车辆的作业效率和故障诊断能力。系统通过PEAK CAN硬件接口和LabVIEW软件平台实现对叉车作业参数的实时监控和故障分析&#xff0c;具有良好的实用性和推广价值。 系统组成 系统主要由P…

Python选择题训练工具:高效学习、答题回顾与音频朗读一站式体验

一、引言 随着人工智能技术的不断进步&#xff0c;传统的教学方式已经逐渐向智能化、互动化转变。在众多英语测试题型中&#xff0c;选择题作为一种高效的方式被广泛应用于各类培训与考试中。为了帮助学生高效学习与自测&#xff0c;本篇文章将采用Python编写一款基于 Python …

鸿蒙开发(18)arkTS类型

联合类型 let a:string | number 12 //联合类型键值对类型 let map:Record<string,number>{ abc:1}枚举 //枚举字段表示性别有哪些取值 enum 枚举名 {枚举字段1:值1,枚举字段2:值2,枚举字段3:值3, } //以性别为例 enum Gender {male "美女",female "帅…

uniapp blob格式转换为video .mp4文件使用ffmpeg工具

前言 介绍一下这三种对象使用场景 您前端一旦涉及到文件或图片上传Q到服务器&#xff0c;就势必离不了 Blob/File /base64 三种主流的类型它们之间 互转 也成了常态 Blob - FileBlob -Base64Base64 - BlobFile-Base64Base64 _ File uniapp 上传文件 现在已获取到了blob格式的…

OpenHarmony-4.HDI 框架

HDI 框架 1.HDI介绍 HDI&#xff08;Hardware Device Interface&#xff0c;硬件设备接口&#xff09;是HDF驱动框架为开发者提供的硬件规范化描述性接口&#xff0c;位于基础系统服务层和设备驱动层之间&#xff0c;是连通驱动程序和系统服务进行数据流通的桥梁&#xff0c;是…

【MongoDB】使用 MongoDB 存储日志、审批、MQ等数据的案例及优点

文章目录 使用MongoDB存储日志数据使用MongoDB存储MQ数据使用MongoDB存储审批数据队列与MongoDB的差异 更多相关内容可查看 在 64 位系统上&#xff0c;使用 ext4 文件系统&#xff0c;文件大小可以达到 16TB&#xff08;这只是文件系统层面的限制&#xff0c;实际情况还会受到…