计算器运算代码jquery(程序员计算器)
admin 发布:2022-12-19 14:34 112
今天给各位分享计算器运算代码jquery的知识,其中也会对程序员计算器进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、使用JavaScript编写程序实现计算器功能,可以实现浮点数的加、减、乘、除运算,请大虾们把代码补充完整!
- 2、js简易计算器代码
- 3、jQuery实现计算器怎样去写连续加减法还有小数点
- 4、如何使用jquery写一个计算器
- 5、利用jQuery插件机制实现简单网页计算器。
- 6、用js代码做一个简易计算器
使用JavaScript编写程序实现计算器功能,可以实现浮点数的加、减、乘、除运算,请大虾们把代码补充完整!
没时间慢慢做,我把自己的思路写下:设置一个全局变量 var out = "";
该变量用来存储结果,当你每触发一个事件的时候,就在该事件触发的FUNCTION函数中进行相应的运算,然后得到的结果就用out存储起来,然后输出在固定位置,建议:用JQUERY吧,比较快
js简易计算器代码
1. html是从上往下逐行执行的,当执行到“var resultValue=document.getElementById("result").value;
”时id为result的页面元素还没有创建,所以出错。应该把这句放在getNum函数里面
2. getNum函数应该这样写
function getNum(num)
{
var result = document.getElementById("result");
result.value += num;
}
3. 双引号里面应为单引号
onclick="getNum(‘9’)"
jQuery实现计算器怎样去写连续加减法还有小数点
放一个输入框和计算按钮
input type="text" id="xxx" /
input type="button" value="计算" onclick="test()" /
然后在js里面写
function test() {
var str = $('#xxx').val();
var result = eval(str);
alert(result);
}
如何使用jquery写一个计算器
style 2 .main{ 3 margin: 0 auto; 4 text-align: center; 5 } 6 *{ 7 padding: 0; 8 margin: 0; 9 }10 table {11 margin: auto;12 border-collapse: collapse;13 14 }15 span{16 display: inline-block;17 text-align:center;18 font-size: 30px;19 width: 404px;20 height: 100px;21 background-color: darkgrey;22 23 }24 table td{25 text-align: center;26 width: 100px;27 height: 100px;28 line-height: 100px;29 background-color: lightgrey;30 border:1px solid darkgrey;31 }32 /style
html部分:
div class="main"
span id="input"
/span
table
tbody
tr
tdC/td
tdD/td
td./td
td*/td
/tr
tr
td7/td
td8/td
td9/td
td-/td
/tr
tr
td4/td
td5/td
td6/td
td+/td
/tr
tr
td1/td
td2/td
td3/td
td//td
/tr
tr
td(/td
td0/td
td)/td
td=/td
/tr
/tbody
/table
/div
jquery部分:
1 script type="text/javascript" src="jquery-3.2.1.min.js"/script 2 script type="text/javascript" 3 $(function(){ 4 var $td=$("td"); 5 6 $td.each(function(){ 7 $(this).click(function(){ 8 var Text=$("#input").text().trim(); 9 $("#input").append($(this).text());10 switch ($(this).text()){11 case "C":12 $("#input").text("");13 break;14 case "D":15 $("#input").text(Text.substr(0,Text.length-1));16 break;17 case "=":18 function compute(content){19 var index=content.lastIndexOf("(");20 if(index-1){21 var nextIndex=content.indexOf(")",index);22 if(nextIndex-1){23 //递归的思想,一步一步的递归24 var result=compute(content.substring(index+1,nextIndex));25 return compute(content.substring(0,index)+(""+result)+content.substring(nextIndex+1))26 }27 28 }29 index=content.indexOf("+");30 if(index-1){31 return compute(content.substring(0,index))+compute(content.substring(index+1));32 }33 index=content.lastIndexOf("-");34 if(index-1){35 return compute(content.substring(0,index))-compute(content.substring(index+1));36 }37 //如果返回的content为空,则返回038 index=content.indexOf("*");39 if(index-1){40 return compute(content.substring(0,index))*compute(content.substring(index+1));41 }42 index=content.lastIndexOf("/");43 if(index-1){44 return compute(content.substring(0,index))/compute(content.substring(index+1));45 }46 if(content==""){47 return 0;48 }else{49 //将content字符串转化为数值,50 //这儿也可以使用一些技巧,比如 content-1+1,使用加减操作符,将字符串转化为数值51 return Number(content);52 }53 }54 $("#input").text(compute(Text));55 }56 })57 58 });59 })6064 /script
代码详解
思路:
1给每个td元素添加一个click事件,通过判断点击不同的按钮来实现不同的行为,例如:当判断点击的元素是操作符“C”的时候,使用
$("#input").text("");来清空元素
2实现计算的思路:
最后做出的代码使用了递归的思想,思路如下:
(1)在点击等号之后,获取到输入的运算式,这个运算式是以字符串的形式存在的,运行compute函数,这个函数的目的是循环查找在字符串中的操作符,在找到操作符之后,将字符串中的以操作符为间隔分为两部分,对于每一部分再进行compute函数的运算,再查找运算符,在进行一次运算,循环,这样一直循环嵌套,一直运算到没有出现运算符为止
(2)实现优先级的代码:
我们知道,在等式运算中,加号和减号的地位是相同的,乘号和除号地位是相同的,先乘除后加减,这就是运算符的优先问题,如何实现运算符优先问题呢?
在这个代码中,是通过根据判断不同运算符是否存在的顺序先后来实现的,在代码中下面这一段代码:
index=content.indexOf("+");30 if(index-1){31 return compute(content.substring(0,index))+compute(content.substring(index+1));32 }33 index=content.lastIndexOf("-");34 if(index-1){35 return compute(content.substring(0,index))-compute(content.substring(index+1));36 }37 //如果返回的content为空,则返回038 index=content.indexOf("*");39 if(index-1){40 return compute(content.substring(0,index))*compute(content.substring(index+1));41 }42 index=content.lastIndexOf("/");43 if(index-1){44 return compute(content.substring(0,index))/compute(content.substring(index+1));45 }
在上面的代码中,先判断的加减号,后判断的乘除号,这里解决的是优先级问题,
例如下面等式: 1+2*3+4
在程序中,先查找到加号运算符,分成两部分,1和 2*3+4 在后面的那一部分中,在进行循环运算,根据程序,先查找加号,又分为了两部分,2*3和4对于2*3运行函数,找到了*号运算符,这时候没有多余的运算符,直接计算2*3等式。
注意知识点:
1,$(selector).trim()用于消除字符串之间的间隔;
2,$(selecoor).each(function(){})用于遍历每个元素,
3,$(seletor).text()用于获取匹配元素内的文本,注意:
在我们使用的是$(selector).text()来获取元素的,在一般的情况下 对于$("td").[0]===$("td:eq(0)")===document.getElementByTagName("td")[0]是等价的
如果我们要获取元素内的文本元素,我们需要通过$("td:eq(0)")来获得,而对于$("td").[0]则获取不到,因此,要注意,不要混用
4,对于字符串的操作方法:
在ECMAScript中存在三种基于子字符串创建新字符串的方法:
slice() , substr()和 substring()这三种方法都会返回被操作字符的一个子字符串,
当接受两个参数的时候,第一个参数指定字符串的开始位置,第二个参数指定子字符串在哪里结束,
对于slice(),substring()和substr()第二个参数表示的意思还不同
对于slice()和substring()第二个参数表示子字符串最后一个字符后面的位置
而对于substr()表示的是返回的字符个数:
代码如下:
var stringValue="hello world";
alert(stringValue.substring(3,7));//"lo w"
alert(stringValue.slice(3,7));//"lo w"
alert(stringValue.substr(3,7)//"lo worl"
如上:
字符串的序号从零开始,对于substring()和slice()截取的是从3开始到7后面的那个字符结束的位置,实际上不包括字符位置为7的位置(最后截取的字符串因此不包括字符"o"),但是包括一开始就截取的开头的字符("l")
而对于substr()表示的是从3的位置开始,要截取7个字符的字符长度作为字符串
如果没有第二个参数,这表示将字符串的长度作为结束位置:代码如下:
alert(stringValue.substring(3));
alert(stringValue.slice(3));
alert(stringValue.substr(3))
最后输出结果均为:
"lo world"
利用jQuery插件机制实现简单网页计算器。
function(e)中e没用到,干嘛的?直接用c=a+b不行吗?jQuery.add(a,b)没用过不清楚
用js代码做一个简易计算器
function test(){
var txt1 = document.getElementById("txt1"),
txt2 = document.getElementById("txt2"),
txt3 = document.getElementById("txt3"),
opt = document.getElementById("sel");
txt3.value = eval(txt1.value + opt.value + txt2.value);//eval函数可计算某个字符串,并执行其中的的js代码
}
input type="text" id="txt1" /
select id="sel"
option value="+"+/option
option value="-"-/option
option value="*"*/option
option value="/"//option
/select
input type="text" id="txt2" /
=
input type="text" id="txt3" /
input type="button" id="btn" value="计算" onclick="test()"/
计算器运算代码jquery的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于程序员计算器、计算器运算代码jquery的信息别忘了在本站进行查找喔。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 05-09网页代码,网页代码快捷键
- 05-06单页网站的代码(完整的网页代码)[20240506更新]
- 05-06个人主页图片代码(个人主页图片代码怎么弄)[20240506更新]
- 05-06提取微信名片代码(微信名片信息提取)[20240506更新]
- 05-06php后台权限管理代码(php管理员权限)[20240506更新]
- 05-06付费观看代码php(付费观看代码)[20240506更新]
- 05-06在线html执行代码(html怎么运行)[20240506更新]
- 05-06源代码管理资源管理器(资源管理器运行代码)[20240506更新]
- 05-06代码源软件库(程序代码库)[20240506更新]
- 05-06点击弹出密码代码(点击弹出密码代码错误)[20240506更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接