使用Node.js构建计算器时控制台仅输出第一个值问题求助
计算器代码问题修复
问题根因
- 你的
Input方法仅将传入的第一个参数赋值给了this.addition属性,没有执行两数相加的逻辑,this.addition本身就是你传入的第一个值4 reply方法直接返回this.addition,所以控制台只会输出4,无法得到相加结果- 调用
Sum.Input(4,2)时仅传入2个参数,你原本定义的第三个参数mul会被赋值为undefined
修复后代码
class Calculator{ // 传入需要计算的两个数字 Input(num1, num2) { this.num1 = num1; this.num2 = num2; } // 加法运算 getAddResult() { return this.num1 + this.num2; } // 减法运算 getSubtractResult() { return this.num1 - this.num2; } // 乘法运算 getMultiplyResult() { return this.num1 * this.num2; } } const Sum = new Calculator(); Sum.Input(4,2); const addResult = Sum.getAddResult(); console.log(addResult); // 输出6
调整说明
- 修改
Input方法的入参为两个待计算的基础数值,避免参数语义混淆 - 拆分不同的运算逻辑为独立方法,需要哪类结果直接调用对应方法即可
- 变量命名更清晰,避免后续维护出现歧义
内容的提问来源于stack exchange,提问作者Mecha
相关产品推荐
相关产品推荐

