function cal()
{
var p1=prompt("请输入第一个数","");
var p2=prompt("请输入第二个数","");
var p3=prompt("请输入运算符","");
switch(p3)
{
case "+":
alert(p1+p3+p2+"="+(parseInt(p1)+parseInt(p2)));break;
case "-":
alert(p1+p3+p2+"="+(p1-p2));break;
case "*":
alert(p1+p3+p2+"="+p1*p2);break;
case "/":
alert(p1+p3+p2+"="+p1/p2);break;
default:
alert("输入有误!");break;
}
}把(parseInt(p1)+parseInt(p2))换成(p1+p2)为什么就没办法显示正确结果啊?
{
var p1=prompt("请输入第一个数","");
var p2=prompt("请输入第二个数","");
var p3=prompt("请输入运算符","");
switch(p3)
{
case "+":
alert(p1+p3+p2+"="+(parseInt(p1)+parseInt(p2)));break;
case "-":
alert(p1+p3+p2+"="+(p1-p2));break;
case "*":
alert(p1+p3+p2+"="+p1*p2);break;
case "/":
alert(p1+p3+p2+"="+p1/p2);break;
default:
alert("输入有误!");break;
}
}把(parseInt(p1)+parseInt(p2))换成(p1+p2)为什么就没办法显示正确结果啊?
输入的还是字符串
alert(p1+p3+p2+"="+(parseInt(p1)+parseInt(p2)));出来的结果是2
alert(p1+p3+p2+"="+(p1+p2));结果是11
为什么?
1、算术运算符 +
2、字符串连接符 你的p1和p2是字符串,优先用2. 因此 parseInt 在这里尽显到了作用.