分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

第十四篇 JS实现加减乘除 正则表达式

发布时间:2023-09-06 01:13责任编辑:苏小强关键词:正则

JS实现加减乘除

这节课,将会继续使用到if判断,会让同学们再看到一个新的,else if判断语句,意思是:否则如果,是基于if下的判断语句,就是说,if不成立则再来判断else if,可以这样,假如a=1,if(a=2){我是2}else if(a=1){我是1}else{我是3},就是这样的关联,但有的同学问,直接用if一直判断就好了,不需要用else if,是这样的,程序运行,else if是基于if的对吧,那么它就是一条语句,如果相同的判断语句多了,全用if,程序就会一个一个去执行,量就会加大,就会影响程序速度。
这节课其实最难的是,“正则表达式”,它特别厉害哦,它可以很简单的来做,手机、IP、验证码、密码、用户名、地址等操作,可以节省更多的代码和思维,它的特点就是,开头和结尾都是用一根 / 斜杠的,里面则是正则内容,用做判断特别给力。
 
上代码,老师做一个初学者能看到的加减乘除法:
 
<!DOCTYPE html><html><head lang="en"> ???<meta charset="UTF-8"> ???<title>JS实现一个加减乘除</title></head><body><h3>加减乘除法</h3><input placeholder="第一个数字" id="num1" type="text"/><select name="fuhao" id="fuhao"> ???<option value="+">+</option> ???<option value="-">-</option> ???<option value="*">*</option> ???<option value="/">/</option></select><input placeholder="第二个数字" id="num2" type="text"/><button onclick="yunsuan()">运算</button><input placeholder="得出结果" id="num3" type="text"/><script>function yunsuan(){ ???//点击事件运行后,获取相关的所有元素id ???var num1 = document.getElementById("num1"); ???var num2 = document.getElementById("num2"); ???var num3 = document.getElementById("num3"); ???var fuhao = document.getElementById("fuhao"); ???// 下面这个是正则表达式,下面这个意思则是,只能输入数字,字数必须有一个及以上 ???var zhengze = /^[0-9]{1,}$/; ???//这里面则是用判断,使用正则的格式,来判断 num1 和num2格式是否正确 ???if(!zhengze.test(num1.value)){ ???????//老师判断力用了一个 !(叹号),意思是取相反,它本身成立则会变成不成立 ???????alert(‘只能输入整数,数字哟‘); ???????//判断如果不成立,弹出提示并让代码停止运行,就不往下面走了 ???????return false; ???}else if(!zhengze.test(num2.value)){ ???????//else if意思是 否则如果,是在if下面使用的一个判断语句 ???????alert(‘只能输入整数,数字哟‘); ???????return false; ???} ???//先用判断,判断它的运算符号 ???//value 是获取它的文本框里的值 select是下拉列表,也可以当做是文本框哦 ???if(fuhao.value == ‘+‘){ ???????//一个等号是赋值,两个等号才是平常我们作比较说的“等于” ???????//在JS里,+号不是两个数字相加,而是‘拼接’,将两个数字或者字符串拼接在一起 ???????//这里我们做数字运算,就要用到parseInt方法,就它转化成数字才能相加得出结果 ???????num3.value = parseInt(num1.value)+parseInt(num2.value); ???}else if(fuhao.value == ‘-‘){ ???????num3.value = parseInt(num1.value)-parseInt(num2.value); ???}else if(fuhao.value == ‘*‘){ ???????num3.value = parseInt(num1.value)*parseInt(num2.value); ???}else if(fuhao.value == ‘/‘){ ???????num3.value = parseInt(num1.value)/parseInt(num2.value); ???}}</body></html>
这里面的代码还可以再节省一点,但老师先做出这样,让入门的同学更加看得懂。那么怎么节省呢,有兴趣的同学自己去想一下咯!
这里老师只用了支持整数,还有小数呢...
这里老师每一个运算符一行代码,就是4行,再加上判断if就又是几行,数学运算符不止这四个,那么我们就再一直无线延伸下去写代码吗?那就太费事了,有办法能做到,直接获取运算符,然后得出结果,老师不吹牛,一行代码直接搞定,那么有兴趣的同学,自己去开发咯!
 

第十四篇 JS实现加减乘除 正则表达式

原文地址:http://www.cnblogs.com/longfeng995/p/7590412.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved