javascript实现简易计算器的代码
来源: 阅读:1329 次 日期:2016-06-17 15:59:09
温馨提示: 小编为您整理了“javascript实现简易计算器的代码”,方便广大网友查阅!

下面小编就为大家带来一篇javascript实现简易计算器的代码小编觉得挺不错的,现在分享给大家,也给大家做个参考。

今天闲来无聊,想写点什么,突然想到用javascript写一个计算器。程序还存在很多的Bug,先在这里记录一下,以后慢慢更正。

名单

代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>javascript实现简易计算器的代码_脚本之家</title>

<style type="text/css">

input{

width:30px;

height:20px;

text-align:center;

}

#tbCalculator td

{

text-align:center;

vertical-align:middle;

}

</style>

<script type="text/javascript">

var result; //保存点击运算符之前输入框中的数值

var operator; //保存运算符

var isPressEqualsKey = false; //记录是否按下”=“键

//数字键事件

function connectionDigital(control)

{

var txt = document.getElementById('txtScream');

if(isPressEqualsKey)

txt.value = ""; //已进行过计算,则清空数值输入框重新开始

isPressEqualsKey = false;

}

//数值输入已经存在小数点,则不允许再输入小数点

if(txt.value.indexOf('.') > -1 && control.value == '.')

return false;

txt.value += control.value; //将控件值赋给数值输入框中

}

//退格键事件

function backspace()

{

var txt = document.getElementById('txtScream');

txt.value = txt.value.substring(0,txt.value.length - 1);

}

//ce键事件:清空数字输入框

function clearAll()

{

document.getElementById('txtScream').value = "";

result = "";

operator = "";

}

// +、-、*、/ 事件

function calculation(control)

{

//将运算符保存入全局变量中

operator = control.value; 

var txt = document.getElementById('txtScream');

if(txt.value == "")return false; //数值输入框中没有数字,则不能输入运算符

//将数值输入框中的值保存到计算表达式中

result = txt.value; 

//清空输入框,以待输入操作值

txt.value = ""; 

}

//计算结果

function getResult()

{

var opValue;

//计算表达式中存在运算符

var sourseValue = parseFloat(result);

var txt = document.getElementById('txtScream');

if(operator == '*')

opValue = sourseValue * parseFloat(txt.value);

else if(operator == '/')

opValue = sourseValue / parseFloat(txt.value);

else if(operator == '+')

opValue = sourseValue + parseFloat(txt.value);

else if(operator == '-')

opValue = sourseValue - parseFloat(txt.value);

txt.value = opValue;

isPressEqualsKey = true;

result = "";

opValue = "";

}

</script>

</head>

<body>

<table id="tbCalculator" width="200" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#0066FF">

<tr>

<td height="30" colspan="4" align="center">

<input type="text" name="txtScream" id="txtScream" style="width:180px; border-style:none; text-align:right;" readonly="readonly" /> </td>

</tr>

<tr>

<td height="30" colspan="2">

<input type="button" name="btnCE" id="btnCE" value="C E" style="width:80px;" align="right"; onclick="clearAll();" /></td>

<td height="30" colspan="2">

<input type="button" name="btn10" id="btn10" value="Backspace" style="width:80px;" align="right"; onclick="backspace();" /></td>

</tr>

<tr>

<td height="30"><input type="button" name="btn7" id="btn7" value="7" onclick="connectionDigital(this);" /></td>

<td><input type="button" name="btn8" id="btn8" value="8" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btn9" id="btn9" value="9" onclick="connectionDigital(this);" /></td>

<td><input type="button" name="btn6" id="btn6" value="/" onclick="calculation(this);" /></td>

</tr>

<tr>

<td height="30">

<input type="button" name="btn4" id="btn4" value="4" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btn5" id="btn5" value="5" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btn6" id="btn6" value="6" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btn13" id="btn13" value="*" onclick="calculation(this);" /></td>

</tr>

<tr>

<td height="30">

<input type="button" name="btn1" id="btn1" value="1" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btn2" id="btn2" value="2" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btn3" id="btn3" value="3" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btn18" id="btn18" value="-" onclick="calculation(this);" /></td>

</tr>

<tr>

<td height="30"><input type="button" name="btn0" id="btn0" value="0" onclick="connectionDigital(this);"/></td>

<td><input type="button" name="btndot" id="btndot" value="." onclick="connectionDigital(this);" /></td>

<td><input name="btn22" type="button" id="btn22" value="=" onclick="getResult();" /></td>

<td><input type="button" name="btn23" id="btn23" value="+" onclick="calculation(this);" /></td>

</tr>

</table>

</body>

</html>

以上这篇javascript实现简易计算器的代码就是小编分享给大家的全部内容了,希望能给大家一个参考

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map