你笑了嘿
2017-03-09 14:25
function count(){
//获取第一个输入框的值
var num1=document.getElementById("txt1").value;
//获取第二个输入框的值
var num2=document.getElementById("txt2").value;
//获取选择框的值
var sel=document.getElementById("select").value;
//获取通过下拉框来选择的值来改变加减乘除的运算法则
var sum=0;
switch(sel)
{
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>
计算结果 5+6=56
var a=parseInt(document.getElementById("txt1").value);//获取第一个输入框的值
var b=parseInt(document.getElementById("txt2").value);//获取第二个输入框的值
用函数parseInt()将字符转换为数字,就可以顺利运行了
1.input获取的value是字符串
2.js是弱数据类型,在运算中会自动转换
只有+这个运算符是既可以在数字中使用也可以在字符串中使用,所以会出现'1'+'2'='12',而1*2=2是因为字符串'1'在*运算中会自动转化成数字1,所以计算是正确的。
所以需要用parseFloat或者parseInt对字符串进行转换
JavaScript进阶篇
468190 学习 · 21891 问题
相似问题