简单快速的实现js计算器功能


Posted in Javascript onAugust 17, 2017

在js的全局方法中有一个eval()方法,由于平时不怎么用,所以到关键时候就没想起来它

想写一个简易的计算器,本来以为要不了多久就能写出来的,谁知道愣是花费了我近两个小时的时间来写,但结果还是不能令我满意。想找一个更好的方法来写,不想写的那么麻烦,用什么方法呢?想了一个遍,后来猛然看到屏幕上有一个eval(),当时我的电脑正打开着网页。福星来了,对啊,我浪费了这么长时间写出来的东西还不能令我满意,一个eval()不就搞定了么,下面就给大家看一下我写的代码,写的很粗糙,还请大家多多指正。

<!DOCTYPE html> 
<html> 
 <head> 
 <meta charset="UTF-8"> 
 <title></title> 
 <style type="text/css"> 
  .box{ 
  width: 400px; 
  height: 450px; 
  margin: 0 auto; 
  background: pink; 
  } 
  .show{ 
  width:100%; 
  height: 100px; 
  line-height: 100px; 
  text-align: right; 
  background: #FFFFFF; 
  border:1px solid #000; 
  } 
  .operate{ 
  width: 100%; 
  height: 250px; 
  margin-top: 50px; 
  } 
  p{ 
  margin-top: 20px; 
  text-align: center; 
  } 
  input{ 
  width: 80px; 
  height: 40px; 
  /*margin-left: 50px;*/ 
  text-align: center; 
  } 
  input:nth-child(5n),input:first-child{ 
  margin-left: 0; 
  } 
 </style> 
 </head> 
 <body> 
 <div class="box"> 
  <div class="show" id="show"></div> 
  <div class="operate"> 
  <p> 
   <input type="button" name="one" id="one" value="1" onclick="num(1)"/> 
   <input type="button" name="two" id="two" value="2" onclick="num(2)"/> 
   <input type="button" name="three" id="three" value="3" onclick="num(3)"/> 
   <input type="button" name="plus" id="plus" value="+" onclick="num('+')"/> 
  </p> 
  <p> 
   <input type="button" name="four" id="four" value="4" onclick="num(4)"/> 
   <input type="button" name="five" id="five" value="5" onclick="num(5)"/> 
   <input type="button" name="six" id="six" value="6" onclick="num(6)"/> 
   <input type="button" name="reduce" id="reduce" value="-" onclick="num('-')"/> 
  </p> 
  <p> 
   <input type="button" name="seven" id="seven" value="7" onclick="num(7)"/> 
   <input type="button" name="eight" id="eight" value="8" onclick="num(8)"/> 
   <input type="button" name="nine" id="nine" value="9" onclick="num(9)"/> 
   <input type="button" name="times" id="times" value="x" onclick="num('*')"/> 
  </p> 
  <p> 
   <input type="button" name="divide" id="divide" value="/" onclick="num(/)"/> 
   <input type="button" name="zero" id="zero" value="0" onclick="num(0)"/> 
   <input type="button" name="equal" id="equal" value="=" onclick="equal()"/> 
   <input type="button" name="mod" id="mod" value="%" onclick="num('%')"/> 
  </p> 
  </div> 
   
 </div> 
 </body> 
 <script type="text/javascript"> 
 function num(figure){ 
//  var figure = figure.toString(); 
  var show = document.getElementById("show"); 
  showNum = show.innerHTML+figure; 
  show.innerHTML = showNum; 
 } 
 function equal(){ 
  document.getElementById("show").innerHTML = eval(document.getElementById("show").innerHTML); 
  /*var lal = document.getElementById("show").innerHTML; 
  alert(lal);*/ 
 } 
 </script> 
</html>

关于计算器的精彩文章请查看《计算器专题》 ,更多精彩等你来发现!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Stop SQL Server
Jun 21 Javascript
JS弹出层的显示与隐藏示例代码
Dec 27 Javascript
BootStrap网页中代码显示用法详解
Oct 21 Javascript
node.js文件上传处理示例
Oct 27 Javascript
前端把html表格生成为excel表格的实例
Sep 19 Javascript
vue使用axios跨域请求数据问题详解
Oct 18 Javascript
4个顶级JavaScript高级文本编辑器
Oct 10 Javascript
详解React项目如何修改打包地址(编译输出文件地址)
Mar 21 Javascript
使用taro开发微信小程序遇到的坑总结
Apr 08 Javascript
详解json串反转义(消除反斜杠)
Aug 12 Javascript
vue-cli3跨域配置的简单方法
Sep 06 Javascript
es6函数之rest参数用法实例分析
Apr 18 Javascript
使用jquery的jsonp如何发起跨域请求及其原理详解
Aug 17 #jQuery
如何理解Vue的.sync修饰符的使用
Aug 17 #Javascript
浅谈JS中的反柯里化( uncurrying)
Aug 17 #Javascript
js编写简单的聊天室功能
Aug 17 #Javascript
Angular使用 ng-img-max 调整浏览器中的图片的示例代码
Aug 17 #Javascript
Canvas放置反弹效果随机图形(实例)
Aug 17 #Javascript
js实现方块上下左右移动效果
Aug 17 #Javascript
You might like
php simplexmlElement操作xml的命名空间实现代码
2011/01/04 PHP
Symfony页面的基本创建实例详解
2015/01/26 PHP
基于laravel Request的所有方法详解
2019/09/29 PHP
再谈IE中Flash控件的自动激活 ObjectWrap
2007/03/09 Javascript
Jquery知识点一 Jquery的ready和Dom的onload的区别
2011/01/15 Javascript
复选框全选与全不选操作实现思路
2013/08/18 Javascript
浏览器图片选择预览、旋转、批量上传的JS代码实现
2013/12/04 Javascript
javaScript中两个等于号和三个等于号之间的区别介绍
2014/06/27 Javascript
jQuery中closest()函数用法实例
2015/01/07 Javascript
JavaScript简单计算人的年龄示例
2017/04/15 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
vue.js如何将echarts封装为组件一键使用详解
2017/10/10 Javascript
web前端开发中常见的多列布局解决方案整理(一定要看)
2017/10/15 Javascript
js自定义trim函数实现删除两端空格功能
2018/02/09 Javascript
微信小程序实现换肤功能
2018/03/14 Javascript
简单了解Ajax表单序列化的实现方法
2019/06/14 Javascript
JS实现导航栏楼层特效
2020/01/01 Javascript
[01:01]青春无憾,一战成名——DOTA2全国高校联赛开启
2018/02/25 DOTA
如何利用Fabric自动化你的任务
2016/10/20 Python
Python内置模块ConfigParser实现配置读写功能的方法
2018/02/12 Python
用python脚本24小时刷浏览器的访问量方法
2018/12/07 Python
python石头剪刀布小游戏(三局两胜制)
2021/01/20 Python
用Python将结果保存为xlsx的方法
2019/01/28 Python
Python叠加两幅栅格图像的实现方法
2019/07/05 Python
python3实现mysql导出excel的方法
2019/07/31 Python
pycharm 2019 最新激活方式(pycharm破解、激活)
2020/09/22 Python
python 利用panda 实现列联表(交叉表)
2021/02/06 Python
python和opencv构建运动检测器的实现
2021/03/03 Python
有个性的自我评价范文
2013/11/15 职场文书
客服工作职责
2013/12/11 职场文书
遗嘱继承公证书
2014/04/09 职场文书
清明节演讲稿
2014/05/27 职场文书
2014员工聘用协议书(最新版)
2014/11/24 职场文书
学校食品安全责任书
2015/01/29 职场文书
victoriaMetrics库布隆过滤器初始化及使用详解
2022/04/05 Golang
MySQL数据库配置信息查看与修改方法详解
2022/06/25 MySQL