JS實現(xiàn)的加減乘除四則運算計算器示例
本文實例講述了JS實現(xiàn)超級簡易的加減乘除四則運算計算器。分享給大家供大家參考,具體如下:
先來看看運行效果:

具體代碼如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>簡單的計算器(chabaoo.cn)</title>
<style>
body{
margin: 0;
}
.tab{
border: 3px solid black ;
border-radius: 2px;
border-collapse:collapse;
width: 268px;
height: 402px;
margin: 20px auto;
}
.tr{
height: 67px;
width: 268px;
border: 3px solid black ;
text-align: right;
}
.tr1{
width: 268px;
height: 67px;
border: 3px solid black ;
text-align: center;
}
.tr2{
width: 67px;
height: 67px;
border: 3px solid black ;
text-align: center;
}
</style>
<script>
var s1 = "";
var s2 = "";
var s3 = "";
var s4 = "";
var s5 = "";
function view(val){
var a = document.getElementById(val);
s1 = a.innerHTML;
if(s1=="+" || s1=="-" || s1=="*" || s1=="/"){
s3 = s1;
s1 = "";
}
if(s3=="+" || s3=="-" || s3=="*" || s3=="/"){
add2(s1);
}
if(s3==""){
add1(s1);
}
}
function add1(s1){
s2 = s2 + s1;
show();
}
function add2(s1){
s4 = s4 + s1;
show();
}
function cal(){
switch(s3){
case "+":{
s5 = (String)((parseFloat(s2)+parseFloat(s4)).toFixed(2));
result.innerHTML = s5;
break;
}
case "-":{
s5 = (String)((parseFloat(s2)-parseFloat(s4)).toFixed(2));
result.innerHTML = s5;
break;
}
case "*":{
s5 = (String)((parseFloat(s2)*parseFloat(s4)).toFixed(2));
result.innerHTML = s5;
break;
}
case "/":{
s5 = (String)((parseFloat(s2)/parseFloat(s4)).toFixed(2));
result.innerHTML = s5;
break;
}
}
}
function show(){
var result = document.getElementById("result");
result.innerHTML = s2+s3+s4;
}
</script>
</head>
<body>
<table class="tab">
<tr class = "tr2">
<td colspan="4">簡易計算器</td>
</tr>
<tr class="tr">
<td id="result" colspan="4" >
</td>
</tr>
<tr >
<td id="+" class="tr1" onclick="view('+')">+</td>
<td id="-" class="tr1" onclick="view('-')">-</td>
<td id="*" class="tr1" onclick="view('*')">*</td>
<td id="/" class="tr1" onclick="view('/')">/</td>
</tr>
<tr >
<td id="7" class="tr1" onclick="view('7')">7</td>
<td id="8" class="tr1" onclick="view('8')">8</td>
<td id="9" class="tr1" onclick="view('9')">9</td>
<td id="0" class="tr1" onclick="view('0')">0</td>
</tr>
<tr>
<td id="4" class="tr1" onclick="view('4')">4</td>
<td id="5" class="tr1" onclick="view('5')">5</td>
<td id="6" class="tr1" onclick="view('6')">6</td>
<td id="." class="tr1" onclick="view('.')">.</td>
</tr>
<tr>
<td id="1" class="tr1" onclick="view('1')">1</td>
<td id="2" class="tr1" onclick="view('2')">2</td>
<td id="3" class="tr1" onclick="view('3')">3</td>
<td id="=" class="tr1" onclick="cal()" >=</td>
</tr>
</table>
</body>
</html>
對于這個程序來說,判斷的順序非常重要,不然就會把"+"號存在s2,s4中而不是s3中。
PS:這里再為大家推薦幾款計算工具供大家進(jìn)一步參考借鑒:
在線一元函數(shù)(方程)求解計算工具:
http://tools.jb51.net/jisuanqi/equ_jisuanqi
科學(xué)計算器在線使用_高級計算器在線計算:
http://tools.jb51.net/jisuanqi/jsqkexue
在線計算器_標(biāo)準(zhǔn)計算器:
http://tools.jb51.net/jisuanqi/jsq
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript數(shù)學(xué)運算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯誤與調(diào)試技巧總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
相關(guān)文章
前端使用pdf.js實現(xiàn)pdf轉(zhuǎn)為圖片
這篇文章主要為大家詳細(xì)介紹了前端如何使用pdf.js實現(xiàn)pdf轉(zhuǎn)為圖片功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04
JS中‘hello’與new String(‘hello’)引出的問題詳解
這篇文章主要給大家介紹了關(guān)于JS中'hello'與new String('hello')引出的問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-08-08
javascript對象的相關(guān)操作小結(jié)
下面小編就為大家?guī)硪黄猨avascript對象的相關(guān)操作小結(jié)。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05
Javascript的常規(guī)數(shù)組和關(guān)聯(lián)數(shù)組對比小結(jié)
關(guān)聯(lián)數(shù)組雖然可以用字符串作下標(biāo),但是這個下標(biāo)是不支持參數(shù)傳值的,換言之,你需要什么就取什么,聽起來很智能,實際上你取值仍然需要你手動去寫下標(biāo)的2012-05-05
詳解JavaScript數(shù)據(jù)類型和判斷方法
這篇文章主要介紹了JavaScript數(shù)據(jù)類型和判斷方法的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)JavaScript,感興趣的朋友可以了解下2020-09-09

