利用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 相关文章推荐
JS解密入门之凭直觉解
Jun 25 Javascript
javascript 用记忆函数快速计算递归函数
Mar 15 Javascript
jquery下异步提交表单 异步跨域提交表单
Nov 17 Javascript
19个很有用的 JavaScript库推荐
Jun 27 Javascript
把字符串按照特定的字母顺序进行排序的js代码
Jan 28 Javascript
关于javascript模块加载技术的一些思考
Nov 28 Javascript
JavaScript中的对象与JSON
Jul 03 Javascript
jQuery简单实现列表隐藏和显示效果示例
Sep 12 Javascript
JS正则RegExp.test()使用注意事项(不具有重复性)
Dec 28 Javascript
基于JavaScript实现拖动滑块效果
Feb 16 Javascript
vue Render中slots的使用的实例代码
Jul 19 Javascript
在antd4.0中Form使用initialValue操作
Nov 02 Javascript
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使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
php实现的Curl封装类Curl.class.php用法实例分析
2015/09/25 PHP
php仿微信红包分配算法的实现方法
2016/05/13 PHP
PHP的消息通信机制测试实例
2016/11/10 PHP
php cli模式下获取参数的方法
2017/05/05 PHP
PHP中echo与print区别点整理
2021/03/09 PHP
IE中直接运行显示当前网页中的图片 推荐
2006/08/31 Javascript
JQuery优缺点分析说明
2011/04/10 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
JavaScript计时器示例分析
2015/02/05 Javascript
JavaScript中style.left与offsetLeft的使用及区别详解
2016/06/08 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
原生js实现倒计时功能(多种格式调用)
2017/01/12 Javascript
Vue iview-admin框架二级菜单改为三级菜单的方法
2018/07/03 Javascript
js实现删除li标签一行内容
2019/04/16 Javascript
微信小程序左滑删除实现代码实例
2019/09/16 Javascript
python日志记录模块实例及改进
2017/02/12 Python
解决Tensorflow使用pip安装后没有model目录的问题
2018/06/13 Python
用python统计代码行的示例(包括空行和注释)
2018/07/24 Python
python 堆和优先队列的使用详解
2019/03/05 Python
Jupyter Notebook打开任意文件夹操作
2020/04/14 Python
Visual Studio code 配置Python开发环境
2020/09/11 Python
记一次Django响应超慢的解决过程
2020/09/17 Python
div或img图片高度随宽度自适应的方法
2020/02/06 HTML / CSS
Traffic People官网:女式花裙、上衣和连身裤
2020/10/12 全球购物
《小池塘》教学反思
2014/02/28 职场文书
应聘编辑自荐信范文
2014/03/12 职场文书
留学顾问岗位职责
2014/04/14 职场文书
项目建议书范文
2014/05/12 职场文书
物业管理委托协议(2篇)
2014/09/23 职场文书
农村党员对照检查材料
2014/09/24 职场文书
大班上学期个人总结
2015/02/13 职场文书
岁月神偷观后感
2015/06/11 职场文书
公司规章制度范本
2015/08/03 职场文书
Python实战之OpenCV实现猫脸检测
2021/06/26 Python
深入浅出讲解Java8函数式编程
2022/01/18 Java/Android