超级简易的JS计算器实例讲解(实现加减乘除)
网络 2017-08-11 1415
废话不多说,直接上代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 | <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>简单的计算器</title> <style> body{ margin: 0; } .tab{ border: 3px solid black ; border-radius: 2px; border-collapse:collapse; width: 268px; height: 402px; margin: 100px 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中。
下一篇:JS实现简单短信验证码界面