简单快速的实现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 相关文章推荐
Prototype Date对象 学习
Jul 12 Javascript
JavaScript中匿名、命名函数的性能测试
Sep 04 Javascript
原生JavaScript制作计算器
Oct 16 Javascript
RequireJS简易绘图程序开发
Oct 28 Javascript
完美解决jQuery fancybox ie 无法显示关闭按钮的问题
Nov 29 Javascript
使用vue实现点击按钮滑出面板的实现代码
Jan 10 Javascript
vue2.0+ 从插件开发到npm发布的示例代码
Apr 28 Javascript
vue升级之路之vue-router的使用教程
Aug 14 Javascript
vuejs router history 配置到iis的方法
Sep 20 Javascript
解决layer弹出层的内容页点击按钮跳转到新的页面问题
Sep 14 Javascript
countUp.js实现数字动态变化效果
Oct 17 Javascript
浅析Vue下的components模板使用及应用
Nov 27 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 auth_http类库进行身份效验
2009/03/19 PHP
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
2011/08/09 PHP
11个PHP 分页脚本推荐
2011/08/15 PHP
php中inlcude()性能对比详解
2012/09/16 PHP
php 目录遍历、删除 函数的使用介绍
2013/04/28 PHP
根据ip调用新浪api获取城市名并转成拼音
2014/03/07 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十二)
2014/06/25 PHP
编写PHP脚本来实现WordPress中评论分页的功能
2015/12/10 PHP
PHP多维数组转一维数组的简单实现方法
2015/12/23 PHP
详解PHP的Yii框架中扩展的安装与使用
2016/04/01 PHP
php求数组全排列,元素所有组合的方法
2016/05/05 PHP
PHP生成推广海报的方法分享
2018/04/22 PHP
php中访问修饰符的知识点总结
2019/01/27 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
2020/01/22 PHP
js下获取div中的数据的原理分析
2010/04/07 Javascript
jQuery实现id模糊查询的小例子
2013/03/19 Javascript
JavaScript获取onclick、onchange等事件值的代码
2013/07/22 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
详解JavaScript设计模式开发中的桥接模式使用
2016/05/18 Javascript
简单实现jQuery多选框功能
2017/01/09 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
2017/01/13 Javascript
Angular.js项目中使用gulp实现自动化构建以及压缩打包详解
2017/07/19 Javascript
十个免费的web前端开发工具详细整理
2017/09/18 Javascript
在Create React App中启用Sass和Less的方法示例
2019/01/16 Javascript
详解webpack4.x之搭建前端开发环境
2019/03/28 Javascript
Angular7中创建组件/自定义指令/管道的方法实例详解
2019/04/02 Javascript
Django 创建新App及其常用命令的实现方法
2019/08/04 Python
Python3的unicode编码转换成中文的问题及解决方案
2019/12/10 Python
HTML5中5个简单实用的API(第二篇,含全屏、可见性、拍照、预加载、电池状态)
2014/05/07 HTML / CSS
新闻专业本科生的自我评价分享
2013/11/20 职场文书
英语专业学生的自我评价
2013/12/30 职场文书
孔繁森观后感
2015/06/10 职场文书
2015年团委副书记工作总结
2015/07/23 职场文书
2016年习总书记讲话学习心得体会
2016/01/20 职场文书
python numpy中setdiff1d的用法说明
2021/04/22 Python
python数字图像处理:图像简单滤波
2022/06/28 Python