超级简易的JS计算器实例讲解(实现加减乘除)


Posted in Javascript onAugust 08, 2017

废话不多说,直接上代码

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>简单的计算器</title>
    <style> 
      body{
        margin: 0;
      }
      .tab{
        border: 3px solid black ;
        border-radius: 2px;
        border-collapse:collapse;
        width: 268px;
        height: 402px;
        margin: 100px auto;
      }
      
      .tr{
        height: 67px;
        width: 268px;
        border: 3px solid black ;
        text-align: right;
      }
      .tr1{
        width: 268px;
        height: 67px;
        border: 3px solid black ;
        text-align: center;
      }
      .tr2{
        width: 67px;
        height: 67px;
        border: 3px solid black ;
        text-align: center;
      }
        
      
    </style>
    <script>
      
      var s1 = "";
      var s2 = "";
      var s3 = "";
      var s4 = "";
      var s5 = "";
      function view(val){
        var a = document.getElementById(val);
        s1 = a.innerHTML;
        if(s1=="+" || s1=="-" || s1=="*" || s1=="/"){
          s3 = s1;
          s1 = "";
        }
        
        if(s3=="+" || s3=="-" || s3=="*" || s3=="/"){
          add2(s1);
          
        }
        
        if(s3==""){
          add1(s1);  
          
        }
        
        
        
        
      }
      function add1(s1){
        s2 = s2 + s1;
        show();
      }
      function add2(s1){
        s4 = s4 + s1;
        show();
      }
      
      function cal(){
        switch(s3){
          case "+":{
            s5 = (String)((parseFloat(s2)+parseFloat(s4)).toFixed(2));
            result.innerHTML = s5;
            break;
          }
          case "-":{
            s5 = (String)((parseFloat(s2)-parseFloat(s4)).toFixed(2));
            result.innerHTML = s5;
            break;
          }
          case "*":{
            s5 = (String)((parseFloat(s2)*parseFloat(s4)).toFixed(2));
            result.innerHTML = s5;
            break;
          }
          case "/":{
            s5 = (String)((parseFloat(s2)/parseFloat(s4)).toFixed(2));
            result.innerHTML = s5;
            break;
          }
        }
        
      }
      
      function show(){
        var result = document.getElementById("result");
        
        result.innerHTML = s2+s3+s4;
        
      }
      
      
      
    </script>
  </head>
  <body>
    <table class="tab">
      <tr class = "tr2">
        <td colspan="4">简易计算器</td>
      </tr>
      <tr class="tr">
        <td id="result" colspan="4" >  
        
        </td>
      </tr>
      <tr >
        <td id="+" class="tr1" onclick="view('+')">+</td>
        <td id="-" class="tr1" onclick="view('-')">-</td>
        <td id="*" class="tr1" onclick="view('*')">*</td>
        <td id="/" class="tr1" onclick="view('/')">/</td>
      </tr>
      <tr >
        <td id="7" class="tr1" onclick="view('7')">7</td>
        <td id="8" class="tr1" onclick="view('8')">8</td>
        <td id="9" class="tr1" onclick="view('9')">9</td>
        <td id="0" class="tr1" onclick="view('0')">0</td>
      </tr>
      <tr>
        <td id="4" class="tr1" onclick="view('4')">4</td>
        <td id="5" class="tr1" onclick="view('5')">5</td>
        <td id="6" class="tr1" onclick="view('6')">6</td>
        <td id="." class="tr1" onclick="view('.')">.</td>
      </tr>
      <tr>
        <td id="1" class="tr1" onclick="view('1')">1</td>
        <td id="2" class="tr1" onclick="view('2')">2</td>
        <td id="3" class="tr1" onclick="view('3')">3</td>
        <td id="=" class="tr1" onclick="cal()" >=</td>
      </tr>
    </table>
  </body>
</html>

对于这个程序来说,判断的顺序非常重要,不然就会把"+"号存在s2,s4中而不是s3中。

以上这篇超级简易的JS计算器实例讲解(实现加减乘除)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery实现的让超出显示范围外的导航自动固定屏幕最顶上
Sep 22 Javascript
利用jQuery实现可以编辑的表格
May 26 Javascript
javascript学习笔记(七)Ajax和Http状态码
Oct 08 Javascript
jQuery+css3实现文字跟随鼠标的上下抖动
Jul 31 Javascript
BootStrap与validator 使用笔记(JAVA SpringMVC实现)
Sep 21 Javascript
JavaScript实现自定义媒体播放器方法介绍
Jan 03 Javascript
Restify中接入Socket.io报Error:Can’t set headers的错误解决
Mar 28 Javascript
vue.js使用3DES加密的方法示例
May 18 Javascript
微信小程序登录换取token的教程
May 31 Javascript
Express本地测试HTTPS的示例代码
Jun 06 Javascript
详解angular2 控制视图的封装模式
Dec 27 Javascript
JS实现轮播图效果
Jan 11 Javascript
浅谈ES6新增的数组方法和对象
Aug 08 #Javascript
Angularjs上传文件组件flowjs功能
Aug 07 #Javascript
详解Vue的computed(计算属性)使用实例之TodoList
Aug 07 #Javascript
详解express与koa中间件模式对比
Aug 07 #Javascript
JS实现简单短信验证码界面
Aug 07 #Javascript
ReactNative Image组件使用详解
Aug 07 #Javascript
JS实现移动端判断上拉和下滑功能
Aug 07 #Javascript
You might like
mysql 的 like 问题,超强毕杀记!!!
2007/01/18 PHP
php数组函数序列之in_array() - 查找数组中是否存在指定值
2011/11/07 PHP
分享一段php获取linux服务器状态的代码
2014/05/27 PHP
php常用表单验证类用法实例
2015/06/18 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
2019/08/03 PHP
通过百度地图获取公交线路的站点坐标的js代码
2012/05/11 Javascript
JS数组去重与取重的示例代码
2014/01/24 Javascript
node.js中的fs.link方法使用说明
2014/12/15 Javascript
利用AJAX实现WordPress中的文章列表及评论的分页功能
2016/05/17 Javascript
jQuery事件绑定用法详解
2016/09/08 Javascript
connection reset by peer问题总结及解决方案
2016/10/21 Javascript
js模块加载方式浅析
2017/08/12 Javascript
jQuery实现图片上传预览效果功能完整实例【测试可用】
2018/05/28 jQuery
layui 富文本赋值,取值,取纯文本值的实例
2019/09/18 Javascript
Vue中jsx不完全应用指南小结
2019/11/01 Javascript
[41:21]夜魇凡尔赛茶话会 第三期02:看图识人
2021/03/11 DOTA
python脚本实现分析dns日志并对受访域名排行
2014/09/18 Python
进一步理解Python中的函数编程
2015/04/13 Python
python使用fileinput模块实现逐行读取文件的方法
2015/04/29 Python
Django中模型Model添加JSON类型字段的方法
2015/06/17 Python
Python中取整的几种方法小结
2017/01/06 Python
TF-IDF与余弦相似性的应用(二) 找出相似文章
2017/12/21 Python
python中partial()基础用法说明
2018/12/30 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
2019/02/20 Python
Django实现学生管理系统
2019/02/26 Python
Python基础之函数的定义与使用示例
2019/03/23 Python
python实现根据给定坐标点生成多边形mask的例子
2020/02/18 Python
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
西雅图电动自行车公司:Rad Power Bikes
2020/02/02 全球购物
人力资源部经理助理岗位职责
2014/03/04 职场文书
党员公开承诺书内容
2014/05/20 职场文书
反对形式主义、官僚主义、享乐主义和奢靡之风整改措施
2014/09/17 职场文书
2014年秘书工作总结
2014/11/25 职场文书
《老人与海鸥》教学反思
2016/02/16 职场文书
少儿励志名言(80句)
2019/08/14 职场文书
apache虚拟主机配置的三种方式(小结)
2022/07/23 Servers