JavaScript If/Else
JavaScript If/Else
我想知道如何让我的javascript显示经理工资的不同结果。我有 2 个 If 语句,但它只显示 2 个条件之一。
numberOfHoursWorked = parseFloat(numberOfHoursWorked);
basePayRate = parseFloat(basePayRate);
if (jobCategorySelectedIndex == 1) {
txtnumberOfHoursWorked = 50;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1;
hoursEligibleForBasePay = 40;
}
else (jobCategorySelectedIndex == 1); {
txtnumberOfHoursWorked = 10;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1;
hoursEligibleForBasePay = 10;
}
这是一般结构:
if (condition) {
// do this if condition is true
} else {
// do this if condition is false
}
没有直接针对else
的条件,因为只有当if
条件为 false 时,它才会被执行。 或者,您可以这样做:
if (condition) {
// do this if condition is true
} else if (condition) {
// do this if first condition is false and this condition is true
} else {
// do this if first and 2nd condition are both false
}
但即使你这样做了(稍微改变了你的榜样)
numberOfHoursWorked = parseFloat(numberOfHoursWorked);
basePayRate = parseFloat(basePayRate);
if (jobCategorySelectedIndex == 1) {
txtnumberOfHoursWorked = 50;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1;
hoursEligibleForBasePay = 40;
}
else if (jobCategorySelectedIndex == 1) {
txtnumberOfHoursWorked = 10;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1;
hoursEligibleForBasePay = 10;
}
这没有意义,因为这两个条件是一回事。要么第一个会触发,第二个不会,要么两者都不会触发。
然后你评论说:
当我将第二个条件从 else 更改为 if 时,它仍然只有 显示 txtnumberOfHoursWorked=10 的第二个 if 语句
好的,现在你有这个:
numberOfHoursWorked = parseFloat(numberOfHoursWorked);
basePayRate = parseFloat(basePayRate);
if (jobCategorySelectedIndex == 1) {
txtnumberOfHoursWorked = 50;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1;
hoursEligibleForBasePay = 40;
}
if (jobCategorySelectedIndex == 1) {
txtnumberOfHoursWorked = 10;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1;
hoursEligibleForBasePay = 10;
}
这两个条件完全相同,因此它们都会被执行。并且您分配了相同的变量,但具有差异值。因此,第二个代码块中的代码块将覆盖第一个代码块。看看你的两个条件:它们是相同的。
我想也许这就是你所追求的,尽管我不确定你为什么要在代码块中为jobCategorySelectedIndex
分配一个值。尤其是第一个代码块,因为它的值已经为 1,以便条件为 true
numberOfHoursWorked = parseFloat(numberOfHoursWorked);
basePayRate = parseFloat(basePayRate);
if (jobCategorySelectedIndex == 1) {
txtnumberOfHoursWorked = 50;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1; // <-- this is unecessary
hoursEligibleForBasePay = 40;
} else { // <-- this gets executed if jobCategorySelectedIndex does not equal 1
txtnumberOfHoursWorked = 10;
hourlyPayRate = 20;
jobCategorySelectedIndex = 1; // <-- are you sure you want to do this??
hoursEligibleForBasePay = 10;
}
相关文章:
- Jquery else if statement
- Javascript skips else if?
- JqueryUI,多个ID和else if 语句在可丢弃,我如何让它们工作
- JQuery Else if statement?
- 以这种方式使用if/else-if/else是一种很好的做法
- switch(true)作为else-if的替代
- else-if子句未按预期工作
- 使用if-else-if-true检查(验证)单选按钮如果未检查则无警报必须检查警报
- Javascript else-if语句错误
- `else if `从不执行;只执行前面的“if”
- 正在创建嵌套的if+else-if语句,但函数返回为未定义
- else-if条件在js渲染模板中
- 我的if和else-if逻辑中的问题以及两个函数的冲突
- 带有if语句的循环的Javascript未到达else-if语句
- 使用 If else if else 语句得到错误
- if-else-if JavaScript 返回 true 并退出,无论输入如何
- Jquery else if is not working
- 如何在 Angular JS 中执行开关或 else/if 语句
- 我可以在 html 文档中使用 if/else if 命令吗?
- 我需要帮助“调试”If/Else if/Else 语句的语法