首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Tax函数发布(If/Else语句)

使用Tax函数发布(If/Else语句)
EN

Stack Overflow用户
提问于 2016-10-26 07:13:57
回答 1查看 31关注 0票数 0

我的功能有问题。当我输入calculateTaxRate(10000,“联合”)时,它没有给出10%的正确答案。它返回的是“最好叫个会计”。我不确定为什么这种情况还在发生。任何帮助我解释这一点的人都将不胜感激。

代码语言:javascript
复制
function calculateTaxRate(salary, status) {
if (status !== ("single" || "joint") || (salary > 74900)) {
    return "Better call an accountant";
} else if (status == "single") {
    if (salary <= 9225) {
        return "10%";
    } else if (9226 <= salary && salary <= 37450) {
        return "15%";
    } else {
        return "25%";
    }
}
if (status == "joint") {
    if (0 <= salary && salary <= 18450) {
        return "10%";
    } else if (18451 <= salary && salary <= $74, 900) {
        return "15%";
    }
}
}
EN

回答 1

Stack Overflow用户

发布于 2016-10-26 07:22:08

代码("single" || "joint")的计算结果为"single“。

如果可以转换为true,则编写为expr1 || expr2的OR条件将返回expr1;否则,将返回expr2。例如:

代码语言:javascript
复制
true || false = true
false || true = true
"Single" || false = "Single"
false || "Joint" = "Joint"

IF条件应该写成:

代码语言:javascript
复制
if ((status !== "single" && status !== "joint") || (salary > 74900)) {

请参阅Logical Operators上的Mozilla开发人员文档

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40251214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档