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

为什么我的加出来是字符串

<!DOCTYPE html>
<html>
 <head>
   <title> 事件</title>
       <script type="text/javascript">
          function count(){ 
                    //获取第一个输入框的值
                        var num1=document.getElementById("txt1").value;	
                        //获取第二个输入框的值	
                        var num2=document.getElementById("txt2").value;	
                        //获取选择框的值	
                        var yuns=document.getElementById("select").value;
                        	//获取通过下拉框来选择的值来改变加减乘除的运算法则
                        		var sum;
                        			switch(yuns){
                        				    case "+":	       sum=num1+num2;	       break;
                        				    	    case "-":	       sum=num1-num2;	       break;	    
                        				    	    case "*":	       sum=num1*num2;	       break;	    
                        				    	    case "/":	      sum=num1/num2;	       break;	   	
                        				    	    }    
                        				    	    //设置结果输入框的值    
                        				    	     document.getElementById("fruit").value=sum;                      				    	     }  
                        				    	     </script>
                        				    	       </head>
                        				    	         <body>   
                        				    	         <input type='text' id='txt1' />    
                        				    	         <select id='select'>		
                        				    	         <option value='+'>+</option>		
                        				    	         <option value="-">-</option>		
                        				    	         <option value="*">*</option>		
                        				    	         <option value="/">/</option>   
                        				    	         </select>   
                        				    	         <input type='text' id='txt2' />   
                        				    	          <input type='button' value=' = ' onclick="count()" />
                        				    	           <!--通过 = 按钮来调用创建的函数,得到结果-->    
                        				    	           <input type='text' id='fruit' />    
                        				    	           </body>
                        				    	           </html>


正在回答

4 回答

要对输入框的两个值通过parsInt进行数字取整 

//获取第一个输入框的值

var num1=pareInt(document.getElementById("txt1").value);

//获取第二个输入框的值

var num2=pareInt(document.getElementById("txt2").value);


0 回复 有任何疑惑可以回复我~
#1

HYDMonster 提问者

谢谢哦
2018-11-21 回复 有任何疑惑可以回复我~

要对输入框的两个值通过parsInt进行数字取整 

//获取第一个输入框的值

var num1=document.getElementById("txt1").value;

//获取第二个输入框的值

var num2=document.getElementById("txt2").value;


0 回复 有任何疑惑可以回复我~

JS里面变量的类型没有明确的指定,所有变量的定义都是用var,在这里var num1=document.getElementById("txt1").value;用控制台查看可以发现是"x"这样的字符串。然后+号可以重载成字符串拼接~~~~

1 回复 有任何疑惑可以回复我~

我写法跟你一样,也遇到了同样的问题,这种写法只有加法运算会变成字符串连接,在加法这样修改就行case "+":n=Number(num1)+Number(num2);,

0 回复 有任何疑惑可以回复我~
#1

HYDMonster 提问者

哦,我后面看好像可以用parseInt来转换得到的值
2018-11-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么我的加出来是字符串

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信