利用JavaScript写一个简单计算器


Posted in Javascript onNovember 27, 2021

效果如下:

利用JavaScript写一个简单计算器

参考程序:

<!DOCTYPE html>

<html lang="en">



<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>模拟计算器</title>

    <style>

        button {

            width: 39px;

            height: 30px;

            background-color: rgb(102, 240, 102);

        }

        button:hover {

            background-color: black;

            color: rgb(255, 249, 237);

        }



        button:active {

            background-color: rgb(79, 72, 72);

            color: white;

        }

        table{

            background: rgb(192, 248, 109);

        }

    </style>

</head>



<body>

    <div>

        <table border="1px">

            <tr style="text-align: center;">

                <td colspan="4">

                    <input type="text" id="result" >

                </td>

            </tr>

            <tr>

                <td><button id="le" onclick="getChar('(')">(</button></td>

                <td><button id="rg" onclick="getChar(')')">)</button></td>

                <td><button id="baifen" onclick="getChar('%')">%</button></td>

                <td><button id="C" onclick="clear1()">C</button></td>

            </tr>

            <tr>

                <td><button id="seven" onclick="getChar('7')">7</button></td>

                <td><button id="eight" onclick="getChar('8')">8</button></td>

                <td><button id="nine" onclick="getChar('9')">9</button></td>

                <td><button id="divi" onclick="getChar('/')">/</button></td>

            </tr>

            <tr>

                <td><button id="four" onclick="getChar('4')">4</button></td>

                <td><button id="five" onclick="getChar('5')">5</button></td>

                <td><button id="six" onclick="getChar('6')">6</button></td>

                <td><button id="mul" onclick="getChar('*')">*</button></td>

            </tr>

            <tr>

                <td><button id="one" onclick="getChar('1')">1</button></td>

                <td><button id="two" onclick="getChar('2')">2</button></td>

                <td><button id="three" onclick="getChar('3')">3</button></td>

                <td><button id="dec" onclick="getChar('-')">-</button></td>

            </tr>

            <tr>

                <td><button id="zero" onclick="getChar('0')">0</button></td>

                <td><button id="point" onclick="getChar('.')">.</button></td>

                <td><button id="=" onclick="getResult()">=</button></td>

                <td><button id="add" onclick="getChar('+')">+</button></td>

            </tr>

        </table>

    </div>

</body>

<script>

    // 点击按键返回按键值

    function getChar(btnid) {

        var btns = document.getElementsByTagName("button")

        switch (btnid) {

            case '+':

                setNum('+')

                break;

            case '.':

                setNum('.')

                break;

            case '=':

                setNum('=')

                break;

            case '0':

                setNum('0')

                break;

            case '1':

                setNum('1')

                break;

            case '2':

                setNum('2')

                break;

            case '3':

                setNum('3')

                break;

            case '-':

                setNum('-')

                break;

            case '4':

                setNum('4')

                break;

            case '5':

                setNum('5')

                break;

            case '6':

                setNum('6')

                break;

            case '7':

                setNum('7')

                break;

            case '8':

                setNum('8')

                break;

            case '9':

                setNum('9')

                break;

            case '/':

                setNum('/')

                break;

            case '*':

                setNum('*')

                break;

            case '(':

                setNum('(')

                break;

            case ')':

                setNum(')')

                break;

            case '%':

                setNum('%')

                break;

            default:

                break;

        }

    }

    // 清空显示屏

    function clear1() {

        document.getElementById("result").value = ""

    }

    // 将数值显示到显示屏

    function setNum(charCode) {

        var origin = document.getElementById('result');

        origin.value += charCode;

        origin.innerText = origin.value;

    }

    // 计算结果

    function getResult(){

        var res=eval(document.getElementById("result").value);

        // 追加'='

        setNum('=');

        // 追加结果

        setNum(res)

    }

</script>

</html>

备注:在做计算的时候,可以直接使用eval这个函数,我们就不用自己手动写加减乘除的计算逻辑了,大大简化了开发

例如:

var num=eval(‘3+3')

则运算结果是num=6

eval函数用法:

语法:eval(参数),参数是js表达式,为字符串,可以包含变量以及已经存在对象的属性

返回值情况:

参数类型 返回值
整数或者函数 整数或函数
字符串(且是表达式) 该字符串表达式的运行结果
字符串(且是语句或者语句块) 执行该语句块并返回undefined

到此这篇关于 利用JavaScript写一个简单计算器的文章就介绍到这了,更多相关JavaScript写简单计算器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
幻宇的层模拟窗口效果-提供演示和下载
Jan 20 Javascript
TextArea 控件的最大长度问题(js json)
Dec 16 Javascript
JavaScript实现GriwView单列全选(自写代码)
May 13 Javascript
如何使用Jquery获取Form表单中被选中的radio值
Aug 09 Javascript
原生JS和JQuery动态添加、删除表格行的方法
May 28 Javascript
使用jQuery5分钟快速搞定双色表格的简单实例
Aug 08 Javascript
基于jQuery实现文字打印动态效果
Apr 21 jQuery
spirngmvc js传递复杂json参数到controller的实例
Mar 29 Javascript
微信小程序有旋转动画效果的音乐组件实例代码
Aug 22 Javascript
Vue 实现展开折叠效果的示例代码
Aug 27 Javascript
layui表格设计以及数据初始化详解
Oct 26 Javascript
Vue 数据响应式相关总结
Jan 28 Vue.js
JavaScript中的宏任务和微任务详情
Nov 27 #Javascript
前端监听websocket消息并实时弹出(实例代码)
Vue实现跑马灯样式文字横向滚动
Nov 23 #Vue.js
利用js实现简单开关灯代码
Nov 23 #Javascript
详解Vue的列表渲染
Nov 20 #Vue.js
详解JS数组方法
Nov 20 #Javascript
详解Vue slot插槽
Nov 20 #Vue.js
You might like
PHP 远程文件管理,可以给表格排序,遍历目录,时间排序
2009/08/07 PHP
ThinkPHP3.1.3版本新特性概述
2014/06/19 PHP
php分页函数完整实例代码
2014/09/22 PHP
PHP之uniqid()函数用法
2014/11/03 PHP
Laravel实现构造函数自动依赖注入的方法
2016/03/16 PHP
Laravel网站打开速度优化的方法汇总
2017/07/16 PHP
PHP ob缓存以及ob函数原理实例解析
2020/11/13 PHP
jQuery find和children方法使用
2011/01/31 Javascript
学习从实践开始之jQuery插件开发 对话框插件开发
2012/04/26 Javascript
jquery Tab效果和动态加载的简单实例
2013/12/11 Javascript
js 实现浏览历史记录示例
2014/04/20 Javascript
首页图片漂浮效果示例代码
2014/06/05 Javascript
node.js中的path.isAbsolute方法使用说明
2014/12/08 Javascript
js选择器全面解析
2016/06/27 Javascript
详解基于node的前端项目编译时内存溢出问题
2017/08/01 Javascript
AngularJs 终极购物车(实例讲解)
2017/11/08 Javascript
详解vue微信网页授权最终解决方案
2019/06/16 Javascript
vant实现购物车功能
2020/06/29 Javascript
Python的Flask框架的简介和安装方法
2015/11/13 Python
python中私有函数调用方法解密
2016/04/29 Python
Python中使用asyncio 封装文件读写
2016/09/11 Python
python数据结构之线性表的顺序存储结构
2018/09/28 Python
对Python 语音识别框架详解
2018/12/24 Python
详解Python连接MySQL数据库的多种方式
2019/04/16 Python
Python用Try语句捕获异常的实例方法
2019/06/26 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
python3 配置logging日志类的操作
2020/04/08 Python
如何用python处理excel表格
2020/06/09 Python
一款纯css3实现的颜色渐变按钮的代码教程
2014/11/12 HTML / CSS
法国创作个性化T恤衫和其他定制产品平台:Tostadora
2018/04/08 全球购物
Hawes & Curtis澳大利亚官网:英国经典服饰品牌
2018/10/29 全球购物
新闻学专业职业生涯规划范文:我的人生我做主
2014/09/12 职场文书
廉政文化进校园广播稿
2014/10/20 职场文书
2014年单位工作总结范文
2014/11/27 职场文书
工程合作意向书范本
2015/05/09 职场文书