为了账号安全,请及时绑定邮箱和手机立即绑定

在JavaScript中关于计算数字变成了计算字符串的问题,如1+1=11而不是2

标签:
JavaScript

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Document</title>

<script type="text/javascript">            

                function count(){

           var x=document.getElementById("Firstnum").value;

   var y=document.getElementById("Secondnum").value;

               var z=document.getElementById("Algorithm").value;

                 switch(z)

               {

                  case "+": document.getElementById("Result").value=parseInt(x)+parseInt(y); break;

                  case "-": document.getElementById("Result").value=parseInt(x)-parseInt(y); break;

                  case "*": document.getElementById("Result").value=parseInt(x)*parseInt(y); break;

                  case "/": document.getElementById("Result").value=parseInt(x)/parseInt(y);;break;

               } 


               }

</script>

</head>

<body>

<form>

<input id="Firstnum" type="text" name="text1"/>

<select id="Algorithm">

<option value="+" onclick="equal()">+</option>

<option value="-">-</option>

<option value="*">*</option>

<option value="/">/</option>

</select>

<input id="Secondnum" type="text" name="text2"/>

<input type="button" name="equal" onclick="count()" value="=">

<input type="text" name="Result " id="Result"/>

</form>

</body>

</html>

 

在写这个简易的四则计算器是发现了在运算加法时候,获取的第一个文本框和第二个文本框的value值是字符串而不是数字。

解决方法

parseInt() 函数

定义和用法

parseInt() 函数可解析一个字符串,并返回一个整数。

parseInt(string, radix)
string必需。要被解析的字符串。
radix

可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。

如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消