在JavaScript中将let值添加到一起

在JavaScript中将let值添加到一起,javascript,Javascript,我正在使用JavaScript开发税务计算器应用程序,在添加let值时遇到问题 当尝试将3个不同的税值相加时,在控制台中,我总是得到第一个值的答案 basiclate, 高度反复无常, 附加税率; 函数计算扩展(Grossalary){ 如果(格罗萨拉里>150000){ basicRate=parseFloat((46351-11000)*0.2)。toFixed(2); higherRate=parseFloat((150000-46351)*0.4)。toFixed(2); 额外利率=浮

我正在使用JavaScript开发税务计算器应用程序,在添加let值时遇到问题

当尝试将3个不同的税值相加时,在控制台中,我总是得到第一个值的答案

basiclate,
高度反复无常,
附加税率;
函数计算扩展(Grossalary){
如果(格罗萨拉里>150000){
basicRate=parseFloat((46351-11000)*0.2)。toFixed(2);
higherRate=parseFloat((150000-46351)*0.4)。toFixed(2);
额外利率=浮动利率((毛利率-150000)*
0.45)。toFixed(2)
taxDue=parseFloat((基本板条箱+高勘误表+
附加速率),固定(2);
}
}
计算扩展(150001)
控制台日志(parseFloat(basicRate).toFixed(2));
log(parseFloat(higherRate).toFixed(2));
log(parseFloat(additionalRate).toFixed(2));
控制台.日志(浮动)(基本板条箱+高勘误表+

附加速率)。toFixed(2))
您得到这个结果是因为
basicRate
higherRate
additionalRate
字符串

basicRate+higherRate+
additionalRate生成字符串
“7070.2041459.600.45”
parseFloat(“7070.2041459.600.45”)。toFixed(2)
返回
7070.20

只有当您真正想要显示数字时,才使用
.toFixed

basiclate,
高度反复无常,
附加税率;
函数计算扩展(Grossalary){
如果(格罗萨拉里>150000){
基本板条箱=(46351-11000)*0.2;
高勘误率=(150000-46351)*0.4;
额外费率=(格罗萨拉里-150000)*
0.45;
应纳税额=基本税率+高税率+
附加税率;
}
}
计算扩展(150001)
控制台。日志(基本板条箱。固定(2));
控制台日志(higherRate.toFixed(2));
console.log(additionalRate.toFixed(2));
控制台日志((基本板条箱+高铁)+

附加速率)。toFixed(2))原样的代码将打印
NaN
。请提供一份报告。此外,将值相加与变量的声明方式无关(
let
var
const
)。没有“让价值”这样的东西。如果仅“获取第一个值”,则其他两个值可能是
0
undefined+undefined+undefined
is
NaN
。没有演示您的问题的演示有什么用?在我看来,它们都是打印出来的。您得到这个结果是因为
basicRate
higherRate
additionalRate
都是字符串
basicRate+higherRate+additionalRate
生成字符串
“7070.2041459.600.45”
parseFloat(“7070.2041459.600.45”)。toFixed(2)
返回值
7070.20
。只有当你真正想显示数字时才使用
.toFixed
。啊哈,太棒了-谢谢你,菲利克斯!