利用javaScript实现简单的计算器
来源:互联网 发布:淘宝店库存软件 编辑:程序博客网 时间:2024/05/16 17:51
先上个效果图:
思路:使用一个total的全局变量来保存累计的结果,flagNew来标记是否是新输入的操作数,opp来存运算符
(1) function $(id) 函数返回通过id获取元素,简化以后使用document.getRlementById()
(2) function clearAll() 函数主要实现的就是让total归零,也就是C按钮的作用
(3) function enterNumber(Num) 函数用于记录输入的数,如果一直输入的是0,就显示为0,否则一直把值以字符的形式向后加
(4) function operation(op) 函数来根据opp('+'、'-'、'*'、'/')来计算值,然后更新total,并显示在界面上
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>简易的计算器</title> <style> body{ background-color: #99ccff; } table{ border-left: 1px solid #ffffff ; border-top: 1px solid #ffffff ; } .inputBox{ border-top: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #FFFFFF; width: 180px; background-color: #ffffff; text-align: right; } input{ border-right: 1px solid #000000; border-top: 1px solid #ffffff; border-left: 1px solid #ffffff; color:#000080; background-color: #d8d8d0; width: 40px; height: 20px; } td{ border-bottom: 1px solid #fff; border-right: 1px solid #fff; height: 25px; } </style></head><body><form action="" method="get" id="myform"> <table width="180px" border="0" cellpadding="3" cellspacing="0" align="center"> <tbody> <tr> <td colspan="4"><input type="text" id="number" class="inputBox" value="0"/> </td> </tr> <tr> <td><input type="button" value="7" onClick="enterNumber(7)" /></td> <td><input type="button" value="8" onClick="enterNumber(8)" /></td> <td><input type="button" value="9" onClick="enterNumber(9)" /></td> <td><input type="button" value="+" onClick="operation('+')" /></td> </tr> <tr> <td><input type="button" value="4" onClick="enterNumber(4)" /></td> <td><input type="button" value="5" onClick="enterNumber(5)" /></td> <td><input type="button" value="6" onClick="enterNumber(6)" /></td> <td><input type="button" value="-" onClick="operation('-')" /></td> </tr> <tr> <td><input type="button" value="1" onClick="enterNumber(1)" /></td> <td><input type="button" value="2" onClick="enterNumber(2)" /></td> <td><input type="button" value="3" onClick="enterNumber(3)" /></td> <td><input type="button" value="*" onClick="operation('*')" /></td> </tr> <tr> <td><input type="button" value="0" onClick="enterNumber(0)" /></td> <td><input type="button" value="C" onClick="clearAll();" /></td> <td><input type="button" value="/" onClick="operation('/')" /></td> <td><input type="button" value="=" onClick="operation('=')" /></td> </tr> </tbody> </table></form></body><script> var total = 0; //全局变量total,累计输入 var flagNew = false; //是否是新的操作数(输入的第二个数) var opp = ""; //运算符变量 function $(id){ return document.getElementById(id); } //清除结果 function clearAll(){ total = 0; $("number").value = 0; } //数字按钮点击调用的函数,num表示输入的数字 function enterNumber(Num){ //判断是否输入新的操作数 if(flagNew){ $("number").value=Num; flagNew = false; }else { if ($("number").value == "0") { $("number").value = Num; } else { $("number").value += Num; } } //alert( document.getElementById("number").value); } //“加减乘除”按钮单击调用的函数,op代表运算符号 function operation(op){ var firstNum = $("number").value; flagNew = true; if(opp != "=") { //根据运算符计算 if ('+' == opp) { total += parseFloat(firstNum); } else if ('-' == opp) { total -= parseFloat(firstNum); } else if ('*' == opp) { total *= parseFloat(firstNum); } else if ('/' == opp) { total /= parseFloat(firstNum); } else { total = parseFloat(firstNum); } } opp = op; //相当于先把符号传进来,然后在下一次调用的时候再用于计算 $("number").value = total; //alert(total); }</script></html>
0 0
- 利用javaScript实现简单的计算器
- javascript实现的简单计算器
- javascript实现的简单计算器
- javascript简单计算器的实现
- javascript实现简单的计算器
- javascript实现的简单计算器
- JavaScript实现简单的计算器
- 利用javascript写一个简单的计算器
- javascript实现简单计算器
- JavaScript实现的简单的计算器
- javascript实现的简单的计算器
- HTML&&JavaScript实现一个简单的计算器
- 用JavaScript实现简单的计算器
- 简单的JavaScript计算器
- 简单的javascript计算器
- JavaScript 简单的计算器
- 简单的javascript计算器
- 简单的JavaScript计算器
- VS2012运行Opencv2.4.14 sample步骤
- Android开发之DatePickerDialog
- 用两个栈实现队列 与 用两个队列实现栈
- HashMap Hashtable区别
- 行转列 列转行
- 利用javaScript实现简单的计算器
- 模板引擎-smarty
- poj 2531 Network Saboteur
- 舵机的原理和控制
- ros学习1--创建工作目录及环境配置
- C/S 和 B/S 架构
- Linux 下cmake安装
- 第四周项目3 - 单链表应用(3)
- iOS基础之ruby2.3.0安装cocoapods(未解决)