基于javascript實現(xiàn)簡單計算器功能
更新時間:2016年01月03日 11:07:34 投稿:lijiao
這篇文章主要介紹了基于javascript實現(xiàn)簡單計算器功能的相關(guān)資料,需要的朋友可以參考下
本文實例為大家介紹javascript實現(xiàn)簡單計算器功能的詳細代碼,分享給大家供大家參考,具體內(nèi)容如下
效果圖:
實現(xiàn)代碼:
<html> <head> <script> function calc(event){ // test //window.alert(event.value); var val = new String(event.value); // clear space val = val.trim(); var res = document.getElementById("res"); // clear if(val == "clear"){ res.value = ""; } // back if(val == "back"){ res.value = res.value.substring(0, res.value.length - 1); } // power if(val == "power"){ val = "p"; } // add val to text if(val.length == 1 && val != "="){ res.value = res.value + val; } // calc result if(val == "="){ var arr; var result; // power if(res.value.indexOf("p") != -1){ arr = res.value.split("p"); //window.alert(arr); result = Math.pow(parseFloat(arr[0]) ,parseFloat(arr[1])); //window.alert(res); res.value = result; } // plus if(res.value.indexOf("+") != -1){ arr = res.value.split("+"); //window.alert(arr); result = parseFloat(arr[0]) + parseFloat(arr[1]); //window.alert(res); res.value = result; } else if(res.value.indexOf("-") != -1){ // minus arr = res.value.split("-"); //window.alert(arr); result = parseFloat(arr[0]) - parseFloat(arr[1]); //window.alert(res); res.value = result; } else if(res.value.indexOf("*") != -1){ // multiply arr = res.value.split("*"); //window.alert(arr); result = parseFloat(arr[0]) * parseFloat(arr[1]); //window.alert(res); res.value = result; } else if(res.value.indexOf("/") != -1){ // division arr = res.value.split("/"); //window.alert(arr); result = parseFloat(arr[0]) / parseFloat(arr[1]); //window.alert(res); res.value = result; } else if(res.value.indexOf("%") != -1){ // module arr = res.value.split("%"); //window.alert(arr); result = parseFloat(arr[0]) % parseFloat(arr[1]); //window.alert(res); res.value = result; } } } </script> </head> <body> <table border="1px" cellpadding="10px" cellspacing="5px" align="center"> <tr align="center"> <td colspan="4"><input type="text" id="res" size="35px" value="" style="text-align:right;"/></td> </tr> <tr align="center"> <td><input type="button" value="power" onclick="calc(this)"/></td> <td><input type="button" value="clear" onclick="calc(this)"/></td> <td colspan="2"><input type="button" value=" back " onclick="calc(this)"/></td> </tr> <tr align="center"> <td><input type="button" value=" 1 " onclick="calc(this)"/></td> <td><input type="button" value=" 2 " onclick="calc(this)"/></td> <td><input type="button" value=" 3 " onclick="calc(this)"/></td> <td><input type="button" value=" + " onclick="calc(this)"/></td> </tr> <tr align="center"> <td><input type="button" value=" 4 " onclick="calc(this)"/></td> <td><input type="button" value=" 5 " onclick="calc(this)"/></td> <td><input type="button" value=" 6 " onclick="calc(this)"/></td> <td><input type="button" value=" - " onclick="calc(this)"/></td> </tr> <tr align="center"> <td><input type="button" value=" 7 " onclick="calc(this)"/></td> <td><input type="button" value=" 8 " onclick="calc(this)"/></td> <td><input type="button" value=" 9 " onclick="calc(this)"/></td> <td><input type="button" value=" * " onclick="calc(this)"/></td> </tr> <tr align="center"> <td><input type="button" value=" 0 " onclick="calc(this)"/></td> <td><input type="button" value=" = " onclick="calc(this)"/></td> <td><input type="button" value=" % " onclick="calc(this)"/></td> <td><input type="button" value=" / " onclick="calc(this)"/></td> </tr> </table> </body> </html>
希望本文所述對大家學(xué)習javascript程序設(shè)計有所幫助。
相關(guān)文章
js實現(xiàn)完美兼容各大瀏覽器的人民幣大小寫相互轉(zhuǎn)換
在基于網(wǎng)頁的打印輸出或報表中,經(jīng)常會牽扯到金額的大寫,每次都打上去很麻煩,所以想法用一個JavaScript客戶端腳本來實現(xiàn)自動轉(zhuǎn)換,只需在需要顯示大寫金額的時候調(diào)用該JS函數(shù),下面我們就來匯總下吧2015-10-10深入理解JavaScript系列(35):設(shè)計模式之迭代器模式詳解
這篇文章主要介紹了深入理解JavaScript系列(35):設(shè)計模式之迭代器模式詳解,迭代器模式(Iterator):提供一種方法順序一個聚合對象中各個元素,而又不暴露該對象內(nèi)部表示,需要的朋友可以參考下2015-03-03JavaScript中使用replace結(jié)合正則實現(xiàn)replaceAll的效果
JavaScript?中使用?replace?達到?replaceAll的效果,其實就用利用的正則的全局替換。2010-06-06