简单快速的实现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 相关文章推荐
js 图片轮播(5张图片)
Dec 30 Javascript
实现变速回到顶部的JavaScript代码
May 09 Javascript
深入理解Javascript中this的作用域
Aug 12 Javascript
JavaScript获得指定对象大小的方法
Jul 01 Javascript
.NET微信公众号开发之创建自定义菜单
Jul 16 Javascript
js获取新浪天气接口的实现代码
Jun 06 Javascript
AngularJS基础 ng-srcset 指令简单示例
Aug 03 Javascript
ajax的分页查询示例(不刷新页面)
Jan 11 Javascript
微信浏览器禁止页面下拉查看网址实例详解
Jun 28 Javascript
vue组件Prop传递数据的实现示例
Aug 17 Javascript
AngularJs 终极购物车(实例讲解)
Nov 08 Javascript
bootstrap与pagehelper实现分页效果
Dec 29 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
PHP4实际应用经验篇(8)
2006/10/09 PHP
安装APACHE
2007/01/15 PHP
PHP下编码转换函数mb_convert_encoding与iconv的使用说明
2009/12/16 PHP
php+mysql 实现身份验证代码
2010/03/24 PHP
PHP中static关键字原理的学习研究分析
2011/07/18 PHP
PHP生成唯一的促销/优惠/折扣码(附源码)
2012/12/28 PHP
ThinkPHP3.1新特性之对页面压缩输出的支持
2014/06/19 PHP
select组合框option的捕捉实例代码
2008/09/30 Javascript
Javascript 检测、添加、移除样式(className)函数代码
2009/09/08 Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
2011/10/23 Javascript
Javascript操作URL函数修改版
2013/11/07 Javascript
Extjs改变树节点的勾选状态点击按钮将复选框去掉
2013/11/14 Javascript
Select标签下拉列表二级联动级联实例代码
2014/02/07 Javascript
单击某一段文字改写文本颜色
2014/06/06 Javascript
JavaScript实现对下拉列表值进行排序的方法
2015/07/15 Javascript
js实现字符串和数组之间相互转换操作
2016/01/12 Javascript
JavaScript数组的一些奇葩行为
2016/01/25 Javascript
electron demo项目npm install安装失败的解决方法
2018/02/06 Javascript
微信小程序中时间戳和日期的相互转换问题
2018/07/09 Javascript
angular 组件通信的几种实现方式
2018/07/13 Javascript
Node.js API详解之 V8模块用法实例分析
2020/06/05 Javascript
[56:42]VP vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
浅谈django中的认证与登录
2016/10/31 Python
使用python脚本实现查询火车票工具
2018/07/19 Python
python实现多张图片拼接成大图
2019/01/15 Python
python 去除二维数组/二维列表中的重复行方法
2019/01/23 Python
如何解决django-celery启动后迅速关闭
2019/10/16 Python
美国婚礼礼品网站:MyWeddingFavors
2018/09/26 全球购物
机关道德讲堂实施方案
2014/03/15 职场文书
党员服务承诺书
2014/05/28 职场文书
法英专业大学生职业生涯规划范文:衡外情,量己力!
2014/09/23 职场文书
2014年政工师工作总结
2014/12/18 职场文书
民事诉讼答辩状范文
2015/05/21 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
python关于集合的知识案例详解
2021/05/30 Python
从np.random.normal()到正态分布的拟合操作
2021/06/02 Python