需求:编写函数,实现使用prompt输入两个数和运算符号,并计算两个数的操作结果。
<body>
<button onclick="check()">计算两数运算结果</button>
<script type="text/javascript">
function check() {
var firstnum = prompt("请输入第一个数:", "");
var secendnum = prompt("请输入第二个数:", "");
var operator = prompt("请输入运算符;", "");
switch (operator) {
case '+':
var theTotal = firstnum + secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
case '-':
var theTotal = firstnum - secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
case '*':
var theTotal = firstnum * secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
case '/':
var theTotal = firstnum / secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
default:
alert("输入有误!");
}
}
</script>
</body>
使用以上代码发现问题,加法运算时无法输出正确的运算结果,原因是输入的两个数字为字符串形式,应使用parseInt ()将参数(通常为字符串)强制转换为整数。
<body>
<button onclick="check()">计算两数运算结果</button>
<script type="text/javascript">
function check() {
var firstnum = parseInt(prompt("请输入第一个数:", ""));
var secendnum = parseInt(prompt("请输入第二个数:", ""));
var operator = prompt("请输入运算符;", "");
switch (operator) {
case '+':
var theTotal = firstnum + secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
case '-':
var theTotal = firstnum - secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
case '*':
var theTotal = firstnum * secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
case '/':
var theTotal = firstnum / secendnum;
alert("两数运算结果为:"+firstnum + operator + secendnum + "=" + theTotal);
break;
default:
alert("输入有误!");
}
}
</script>
</body>
修改后,需求实现。