JavaScript实现的超简单计算器功能示例


Posted in Javascript onDecember 23, 2017

本文实例讲述了JavaScript实现的超简单计算器功能。分享给大家供大家参考,具体如下:

先来看看运行效果:

JavaScript实现的超简单计算器功能示例

具体代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>3water.com JS计算器</title>
  <script type="text/javascript">
   // window.onload 获取元素getElementById
    window.onload = function(){
      var oTxt1 = document.getElementById('val01');
      var oTxt2 = document.getElementById('val02');
      var oFuhao = document.getElementById('fuhao');
      // 这三个要放在button函数里面,因为s1.value是获取input里面的输入,但是这个时候还没有输入了
      // var iNum1 = oTxt1.value;
      // var iNum2 = oTxt2.value;
      // var iNum3 = oFuhao.value;
      oBtn = document.getElementById('btn');


 // 计算按钮点击事件
      oBtn.onclick = function(){
        var iNum1 = oTxt1.value;
        var iNum2 = oTxt2.value;
        var iNum3 = oFuhao.value;
        var iResult;





//如果两个输入有一个是空的话




//return是让if里面执行结束
        if (iNum1=='' || iNum2=='') {
          alert('不能为空');
          return;
        }




//isNaN() 如果是true,说明是非数字,所以如果两个输入中有非数字,就提示alert
        if (isNaN(iNum1) || isNaN(iNum2)) {
          alert('不能有字母');
          return;
        }




//对+-*/四个操作对应的value进行判断




//如果直接iNum1+iNum2 输出的结果是字符串的拼接 12+24 1224 所以要转换成parseInt整数
        if (iNum3 == 0) {
          iResult = parseInt(iNum1) + parseInt(iNum2)
        }
        else if (iNum3 == 1) {
          iResult = parseInt(iNum1) - parseInt(iNum2)
        }
        else if (iNum3 == 2) {
          iResult = parseInt(iNum1) * parseInt(iNum2)
        }
        else if (iNum3 == 3) {
          iResult = parseInt(iNum1)/parseInt(iNum2)
        }
        alert(iResult);
      }
    }
  </script>
</head>
<body>
  <h3>计算器</h3>
  <input type="text" id="val01">
  <select id="fuhao">
    <option value="0">+</option>
    <option value="1">-</option>
    <option value="2">*</option>
    <option value="3">/</option>
  </select>
  <input type="text" id="val02">
  <input type="button" id="btn" value="计算">
</body>
</html>

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.3water.com/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.3water.com/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.3water.com/jisuanqi/jsq

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
如何实现动态删除javascript函数
May 27 Javascript
Jquery 插件学习实例1 插件制作说明与tableUI优化
Apr 02 Javascript
js闭包实现按秒计数
Apr 23 Javascript
基于jQuery实现Div窗口震动特效代码-代码简单
Aug 28 Javascript
jQuery焦点图切换特效代码分享
Sep 15 Javascript
jQuery带进度条全屏图片轮播特效代码分享
Jun 28 Javascript
js一维数组、多维数组和对象的混合使用方法
Apr 03 Javascript
基于 Node.js 实现前后端分离
Apr 23 Javascript
纯javascript实现选择框的全选与反选功能
Apr 08 Javascript
微信小程序—setTimeOut定时器的问题及解决
Jul 26 Javascript
vue使用swiper实现中间大两边小的轮播图效果
Nov 24 Javascript
原生JS实现弹幕效果的简单操作指南
Nov 10 Javascript
Angular实现较为复杂的表格过滤,删除功能示例
Dec 23 #Javascript
Vue.js 的移动端组件库mint-ui实现无限滚动加载更多的方法
Dec 23 #Javascript
9种使用Chrome Firefox 自带调试工具调试javascript技巧
Dec 22 #Javascript
JavaScript中的一些隐式转换和总结(推荐)
Dec 22 #Javascript
原生JS写Ajax的请求函数功能
Dec 22 #Javascript
原生JS控制多个滚动条同步跟随滚动效果
Dec 22 #Javascript
使用vue-cli+webpack搭建vue开发环境的方法
Dec 22 #Javascript
You might like
实现了一个PHP5的getter/setter基类的代码
2007/02/25 PHP
php 移除数组重复元素的一点说明
2008/11/27 PHP
php去除换行(回车换行)的三种方法
2014/03/26 PHP
thinkPHP实现表单自动验证
2014/12/24 PHP
PHP编程实现csv文件导入mysql数据库的方法
2017/04/29 PHP
跨浏览器的 mouseenter mouseleave 以及 compareDocumentPosition的使用说明
2010/05/04 Javascript
Javascript面向对象之四 继承
2011/02/08 Javascript
JQuery中$(document)是什么意思有什么作用
2014/07/21 Javascript
JS动态日期时间的获取方法
2015/09/28 Javascript
javascript中tostring()和valueof()的用法及两者的区别
2015/11/16 Javascript
20分钟成功编写bootstrap响应式页面 就这么简单
2016/05/12 Javascript
jQuery简单验证上传文件大小及类型的方法
2016/06/02 Javascript
浅谈jQuery 选择器和dom操作
2016/06/07 Javascript
老生常谈onBlur事件与onfocus事件(js)
2016/07/09 Javascript
vue.js声明式渲染和条件与循环基础知识
2017/07/31 Javascript
微信小程序实现跑马灯效果
2020/10/21 Javascript
[03:22]DAC最前线(第二期)—DOTA2亚洲邀请赛主赛场周边及线路探访
2015/01/24 DOTA
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
浅析python 内置字符串处理函数的使用方法
2014/06/11 Python
Python中MySQL数据迁移到MongoDB脚本的方法
2016/04/28 Python
解决Python pandas df 写入excel 出现的问题
2018/07/04 Python
Python Pandas实现数据分组求平均值并填充nan的示例
2019/07/04 Python
Python @property及getter setter原理详解
2020/03/31 Python
Python3-异步进程回调函数(callback())介绍
2020/05/02 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
Python中logging日志记录到文件及自动分割的操作代码
2020/08/05 Python
美国领先的奢侈手表在线零售商:WatchMaxx
2017/12/17 全球购物
《穷人》教学反思
2014/04/08 职场文书
祖国在我心中演讲稿500字
2014/05/04 职场文书
党支部工作总结2015
2015/04/01 职场文书
预备党员半年考察意见
2015/06/01 职场文书
Spring Boot实战解决高并发数据入库之 Redis 缓存+MySQL 批量入库问题
2022/02/12 Redis
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python
叶县这家生产军用电台的兵工厂,人称“四机部”,走出一上将
2022/02/18 无线电
详解Flutter和Dart取消Future的三种方法
2022/04/07 Java/Android
索尼ICF-5900W收音机测评
2022/04/24 无线电