本文实例为大家介绍javascript实现简单计算器功能的详细代码,分享给大家供大家参考,具体内容如下
效果图:
实现代码:
<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>
希望本文所述对大家学习javascript程序设计有所帮助。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月25日
2024年11月25日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]