Javascript编写的简易计算器
用JS编写计算器
Javascript相当只简洁方便,颇有MATLAB之风
这是曾经web课上的作业,用js写个简单的计算器
这里关键是定义计算器的函数,首先看js定义函数的语法:
- function func1(…){…};
- var func2=function(…){…};
- var func3=function func4(…){…};
- var func5=new Function();
Js中每个变量包括函数都需要作为一个对象来运营维护。
直接贴上计算器的代码:
- <script language="javascript" >
- //计算中要用到的变量
- var formulaToShow=""; //要显示的计算式
- var formulaToCalcu="";//要计算的计算式
- var result=" "; //计算结果
- var saved="0"; //存储的数
- //生成计算式的函数
- function TypeFormula(com)
- {
- //如果是已经求过值,则清屏并重新开始计算
- if((result!=" "||result=="0") && com!="save"){
- formulaToShow="";
- result=" ";
- }
- //得到按钮信息
- switch(com)
- {
- case "clear"://清空
- formulaToShow="";
- result=" ";
- break;
- case "back"://退格(这个写的有些冗余)
- {var f=formulaToShow;
- if(f.substring(f.length-5,f.length)=="asin("||f.substring(f.length-5,f.length)=="acos("||f.substring(f.length-5,f.length)=="atan("||f.substring(f.length-5,f.length)=="sqrt(")
- formulaToShow=formulaToShow.substring(0,formulaToShow.length-5);
- else if(f.substring(f.length-4,f.length)=="sin("||f.substring(f.length-4,f.length)=="cos("||f.substring(f.length-4,f.length)=="tan("||f.substring(f.length-4,f.length)=="exp(")
- formulaToShow=formulaToShow.substring(0,formulaToShow.length-4);
- else if(f.substring(f.length-3,f.length)=="ln(")
- formulaToShow=formulaToShow.substring(0,formulaToShow.length-3);
- else
- formulaToShow=formulaToShow.substring(0,formulaToShow.length-1);
- }
- break;
- case "sign":
- {if (formulaToShow=="")formulaToShow="-";
- else if(formulaToShow[0]=="-")formulaToShow=formulaToShow.substring(1,formulaToShow.length);
- else formulaToShow="-"+formulaToShow;}
- break;
- case "save":
- saved=formulaToShow;
- break;
- case "getsave":
- formulaToShow=formulaToShow+saved;
- break;
- case "result"://计算结果
- {if(formulaToShow=="") result=" ";
- else {
- formulaToCalcu=formulaToShow.toString();
- formulaToCalcu=formulaToCalcu.replace(/sin/g, "Math.sin");
- formulaToCalcu=formulaToCalcu.replace(/cos/g, "Math.cos");
- formulaToCalcu=formulaToCalcu.replace(/tan/g, "Math.tan");
- formulaToCalcu=formulaToCalcu.replace(/asin/g, "Math.asin");
- formulaToCalcu=formulaToCalcu.replace(/aMath.sin/g, "Math.asin");
- formulaToCalcu=formulaToCalcu.replace(/acos/g, "Math.acos");
- formulaToCalcu=formulaToCalcu.replace(/aMath.cos/g, "Math.acos");
- formulaToCalcu=formulaToCalcu.replace(/atan/g, "Math.atan");
- formulaToCalcu=formulaToCalcu.replace(/aMath.tan/g, "Math.atan");
- formulaToCalcu=formulaToCalcu.replace(/exp/g, "Math.exp");
- formulaToCalcu=formulaToCalcu.replace(/ln/g, "Math.log");
- formulaToCalcu=formulaToCalcu.replace(/sqrt/g, "Math.sqrt");
- try {result=eval(formulaToCalcu);}
- catch (exception) {
- window.alert(exception); }
- }
- }
- break;
- default:
- formulaToShow+=com;
- break;
- }
- txtShow.innerHTML=formulaToShow+"<br/>"+result+"<br/>";
- }
- </script>
我们可以使用很多内置的函数,如sin() cos()等
下面是计算器截图:
转载请注明出处:http://blog.csdn.net/xiaowei_cqu/article/details/7081348
源码下载:http://download.csdn.net/detail/xiaowei_cqu/3935914
Javascript编写的简易计算器相关推荐
- 前端 JavaScript 实现一个简易计算器
前端使用 JavaScript 实现一个简易计算器,没有难度,但是里面有些小知识还是需要注意的,算是一次基础知识回顾吧. 题目 实现一个简易版的计算器,需求如下: 1.除法操作时,如果被除数为0,则结 ...
- 十位数连加 c语言,用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除....
用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除. 用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除. 人气:435 ℃时间:2020-04-10 06:55:13 优质解答 ...
- 原生JavaScript实现的简易计算器
tip:有问题或者需要大厂内推的+我脉脉哦:丛培森 ٩( 'ω' )و 最近一直没有写博客 因为一直忙着预习考试内容 什么偏微分啊.数值分析啊.计算机图形学啊.信息论- 在未来一个月可能会很忙 整理前 ...
- python中用于释放类占用的资源的方法是()_编写一个简易计算器,要求根据输入的数字和四则运算符号,计算运算结果并输出。_学小易找答案...
[简答题]20191220 课前作业 新工作页4.1的3-5-3页的填空题,参考教材P135-P144 [简答题]AutoCAD改编视图,尽量不用虚线 1. 主视图采用局部剖,表达右上角小圆筒(及孔) ...
- C#编写一个简易计算器
C#编写一个简易计算器 界面 代码 using System; using System.Collections.Generic; using System.ComponentModel; using ...
- 用VBA编写的简易计算器
我用EXCEL2010的VBA编写了一个简易计算器,代码很简单,核心内容是如何计算字符串表达式(例如"3+2*5"),JAVAscript.Python中可以使用EVAL()函数, ...
- 用JavaScript实现一个简易计算器功能
简易计算器 文章目录 简易计算器 界面一览 一.需求 二.body创建整体显示外观 三.css样式 四.JavaScript事件函数 五.小结 界面一览 一.需求 1.构建出计算器外观. 2.显示屏跟 ...
- html制作简易计算机,用JavaScript制作一个简易计算器
制作出来是一个五行三列的表格,第一行是标题简易计算器,第二行是第一个数,第三行是第二个数,第四行是计算机结果,第五行是说明步骤,第三列是加减乘除四种运算方法. 简易计算器 table{ border: ...
- Java编写的简易计算器
一般来说,刚开始学习Java比较适合做一些小的东西,比如计算器.图书管理系统什么的,这样会学的稍微快一些.而我这个计算器正适合新手参考,为什么?因为我也是新手.虽说代码比较烂,但是很- 我先说下大致思 ...
最新文章
- 第二课.多元高斯分布与其几何特征
- GD32定时器输入捕获例程
- gdk_draw_arc这个函数
- mysql数据导入导出方法总结
- MyBatis 插件原理与自定义插件-猜想
- 推荐一位朋友(大学教授)写给孩子的数学思维书
- 代码英雄:波澜壮阔的操作系统之战(音频+长文)
- poj 1466 Girls and Boys
- cosx的麦克劳林级数是多少_余弦函数的泰勒级数
- 数字 IC 技能拓展(18)如何快速上手 FPGA 开发板呢
- android 市场自动安装软件,烦人 安卓手机总是自动装应用 不怕 应用市场加把锁轻松搞定...
- 【数据聚类】基于多元宇宙优化DBSCAN实现数据聚类分析附matlab代码
- java ipv6校验_Java对IPv6的支持详解:支持情况、相关API、演示代码等
- 利用cloudflare works搭建个人网盘站——免费免服务器搭建基于onedrive的网盘站(2021版)
- 程序员的“荣”与“耻”之我见
- AutoResetEvent与ManualResetEvent区别
- 【大数据处理技术】期末复习整理
- python校园失物招领系统毕业设计开题报告
- 用python 画太阳_Python PIL画一个太阳神的圆圈
- Idea创建SpringBoot搭建SSM框架项目,支持JSP页面
热门文章
- 灰度图像--图像增强 非锐化掩蔽 (Unsharpening Mask) .
- 小胖机器人能刷碗吗_小胖机器人好不好?透过真相看本质
- MySQL-Btree索引和Hash索引初探
- 基础JavaScript_Day04
- spark 集群单词统计_最近Kafka这么火,聊一聊Kafka:Kafka与Spark的集成
- RocketMQ简介
- php每天扒取当天新闻_php 抓取新浪新闻的程序代码
- ad09机械层说明_悉数PCB上的各种层
- radio 事件_nRF52832/51822系列RADIO外设介绍/使用
- (三) LtRecyclerView v2.x (自定义上拉和下拉刷新View)