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

parseInt函数问题

<!DOCTYPE html>    
<html>    
<head>    
<title> new document </title>      
<script type="text/javascript">    
function count(){    
		var txt1   = parseInt( document.getElementById('txt1').value);//获取第一个输入框的值    
		var txt2   = parseInt( document.getElementById('txt2').value);//获取第二个输入框的值    
		var select = document.getElementById('select').value;//获取选择框的值    
		var result = '';    
		switch (select)    
		{    
			case '+':    
				result = txt1 + txt2;    
				break;    
			case '-':    
				result = txt1 - txt2;    
				break;    
			case '*':    
				result = txt1 * txt2;    
				break;    
			case '/':    
				result = txt1 / txt2;    
				break;    
		}    
document.getElementById('fruit').value = result;//设置结果输入框的值    
}    
</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>

文中最上面获取txt文本的值,为什么不加parseInt函数,运行加法的时候,为什么是两个值得相结合,比如1+1的值是11,而不是2

正在回答

2 回答

因为

        var txt1   = parseInt( document.getElementById('txt1').value);//获取第一个输入框的值    

        var txt2   = parseInt( document.getElementById('txt2').value);//获取第二个输入框的值 

获取的是文本框里的东西,是字符串。

不加

parseInt函数以执行的是字符串拼接。

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

淡雅的默 提问者

那为什么*/-都可以正确执行呢,就是加不行
2015-12-11 回复 有任何疑惑可以回复我~
#2

淡雅的默 提问者

非常感谢!
2015-12-11 回复 有任何疑惑可以回复我~

字符串拼接符号是啥?不是+ ? 还有 - / * ?? 后三个会先转换成数值再执行。

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

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468982    人
  • 解答问题       22582    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

parseInt函数问题

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号