js做一个简易计算器具体如下:
<html>
<head>
<title>js运算</title>
<boby>
<table>
<tr>
<td>第一个数</td>
<td><input type="text" id="onesum"></td>
</tr>
<tr>
<td>运算符号</td>
<td><input type="text" id="fh"></td>
</tr>
<tr>
<td>第二个数</td>
<td><input type="text" id="twosum"></td>
</tr>
<tr>
<td>计算结果</td>
<td><input type="text" id="sum"></td>
</tr>
<tr>
<td colspan="2"><input type="button" value=" 计算 " onclick="js()"></td>
</tr>
<table>
<script>
function js(){
var num1=document.getElementById("onesum").value
var num2=document.getElementById("twosum").value
var fh=document.getElementById("fh").value
var sum=0
nu
m1=Number(num1)
num2=Number(num2)
if(fh=='+')
{
sum=num1+num2
}
else if(fh=='-')
{
sum=num1-num2
}else if(fh=='*')
{
sum=num1*num2
}else if(fh=='/')
{
sum=num1/num2
}
//alert(sum)
document.getElementById("sum").value=sum
}
</script>
</boby>
</html>
JavaScript 教程 JavaScript 是属于网络的脚本语言! JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。
<!doctype html><html>
<head>
<title>计算器</title>
<meta charset="utf-8"/>
<style type="text/css">
.panel{
border:4px solid #ddd
width:192px
margin:100px auto
}
.panel p,.panel input{
font-family:"微软雅黑"
font-size:20px
margin:4px
float:left
}
.panel p{
width:122px
height:26px
border:1px solid #ddd
padding:6px
overflow:hidden
}
.panel input{
width:40px
height:40px
border:1px solid #ddd
}
</style>
<script type="text/javascript">
//参数e用来接收传入的event对象
function cal(e){
//1.获取事件源,处理button的事件
var obj=e.srcElement||e.target
if(obj.nodeName !="INPUT"){
return
}
var value=obj.value
var p=document.getElementById("screen")
if(value=="C"){
//2.如果是[C],则清空p
p.innerText=""
}else if(value=="="){
//3.如果是[=],则运算
var exp=p.innerText
try{
var result=eval("("+exp+")")
//如果正确执行,将结果写入p
p.innerText=result
}catch(e){
//发生错误,给予错误提示
p.innerText="Error."
}
}else{
//4.如果是其它按钮,则将value追加到p中
p.innerText+=value
}
}
</script>
</head>
<body>
<!--在最外层的div上注册单击事件,传入event对象,然后在函数中通过event判断出事件来源于哪一个button,
进而做出应有的处理。这样的好处是,避免在button上大量的注册事件。-->
<div class="panel" onClick="cal(event)">
<div>
<p id="screen"></p>
<input type="button" value="C">
<div style="clear:both"></div>
</div>
<div>
<input type="button" value="7">
<input type="button" value="8">
<input type="button" value="9">
<input type="button" value="/">
<input type="button" value="4">
<input type="button" value="5">
<input type="button" value="6">
<input type="button" value="*">
<input type="button" value="1">
<input type="button" value="2">
<input type="button" value="3">
<input type="button" value="-">
<input type="button" value="0">
<input type="button" value=".">
<input type="button" value="=">
<input type="button" value="+">
<div style="clear:both"></div>
</div>
</body>
</html>
这是我自学时候写的计算器
以下简单说下用 JavaScript 编写简单计算器的思路。
一、运算核心
对于 JavaScript 来说,编写一个简单的计算器的核心,是借用 js 提供的 eval 函数,eval 函数可以对给定的字符串表达式执行运算,并返回结果。
举例来说:
s = eval("50+20-30*40/20")其结果是 10。可以看出,先乘除后加减等运算规则都能正确处理。
二、输入(组合)运算式
核心运算解决后,下一步就是解决如何输入(组合)运算式。
其实也并不复杂,计算器上的符号可以分为4类:
1、0-9 数值
2、% .
3、+ - * /
4、= 退格
除了第 2 类和第 4 类,需要专门处理外,基本上都可以当做字符串处理。即,设置一个全局变量,用于保存用户的输入,当点击时,将值添加进变量字符串的末尾。
当用户点击 “=” 时,调用 eval 函数,计算表达式,并输出结果。
当用户点击“退格”时,删除表达式的最后一个字符。
三、进行界面设计
对于 JS 来说,大多还是要借用 HTML 元素,如 Button 等,样式用 CSS 进行控制。
以下提供相关代码供参考:
<script>var num = 0 // 定义第一个输入的数据
function jsq(num) {
//获取当前输入
if(num=="%"){
document.getElementById('screenName').value=Math.round(document.getElementById('screenName').value)/100
}else{
document.getElementById('screenName').value += document.getElementById(num).value
}
}
function eva() {
//计算输入结果
document.getElementById("screenName").value = eval(document.getElementById("screenName").value)
}
function clearNum() {
//清0
document.getElementById("screenName").value = null
document.getElementById("screenName").focus()
}
function tuiGe() {
//退格
var arr = document.getElementById("screenName")
arr.value = arr.value.substring(0, arr.value.length - 1)
}
</script>