正在看pink老师的视频学习JavaScript,目前进行到函数部分,其中一道课后练习题要求用函数编写一个简易计算器,请用户任意输入两个数字,任意选择一种运算方式,计算出最后结果并弹出提示框显示结果。
要求最终效果如下图:
配套资料里给的参考答案我没有看明白,网上搜索类似的题目也和上面展示的效果有所差异,所以只能自己动手了。
function doCalculate(symbol, num1, num2) {
switch (parseInt(symbol)) {
case 1:
return result = num1 + num2;
break;
case 2:
return result = num1 - num2;
break;
case 3:
return result = num1 * num2;
break;
case 4:
return result = num1 / num2;
break;
}
}
let value_z = prompt('欢迎使用小小计算器,请选择要进行的运算:\n 1、加法运算 \n 2、减法运算 \n 3、乘法运算 \n 4、除法运算 \n 5、退出 ');
if (value_z == 5) {
alert('您已退出');
} else {
let value_x = parseInt(prompt('请输入你的第一个值:'));
let value_y = parseInt(prompt('请输入你的第二个值:'));
alert(doCalculate(value_z, value_x, value_y));
}
parseInt(symbol) 这里卡壳了好久,没有意识到当value_z赋值给symbol之后是字符串的类型,而case中的值 1-4 是数字型,前后不一致导致return的值一直undefined,郁闷了好久,下次一定长记性了。
博主零基础转码小白,如有错误烦请各位大佬帮忙指出,如果有更简洁优雅的方法也欢迎讨论(肯定是有的,但大概率我还没学到那里QAQ)