我想检查是否有负值,如果有,则将其更改为默认值。
for (i = 0; i <= 1; i++) {
//I want this to run this statement once and if its true perform all the functions and move to the next one
if (h1 < 0 || h2 < 0) {
alert("negative number is not acceptable here");
document.getElementById("up1").value = document.getElementById("up1").defaultValue;
document.getElementById("q1").value = document.getElementById("q1").defaultValue;
document.getElementById("tot1").value = document.getElementById("tot1").defaultValue;
Total1 = 0.00;
continue;
}
else if (h3 < 0 || h4 < 0) {
alert("No Negative here as well")
document.getElementById("up2").value = document.getElementById("up2").defaultValue;
document.getElementById("q2").value = document.getElementById("q2").defaultValue;
document.getElementById("tot2").value = document.getElementById("tot2").defaultValue;
continue;
}
//I have a let Total1 & Total2 variables at the beggining of the code set to zero
//
Total2 = h3 * h4;
}
嗨,伙计们,如果第一个if语句的计算结果为TRUE并运行其中的所有函数,那么无论如何都要继续执行下一个else if语句。目前,如果第一个if语句的计算结果为true,则执行其中的所有函数并结束循环。我想让它检查每个变量是否为负值,而不需要再重复一遍代码。
有两种情况下你的问题。
- 只有当第一个if块为true时才运行第二个块。
- 你想运行第二个块或者第一个块为真或假
第一例
isFirstBlockTrue = false
if (h1 < 0 || h2 < 0) {
isFirstBlockTrue = true
/* rest of your code */
}
if(isFirstBlockTrue){
if (h3 < 0 || h4 < 0) {
/* rest of your code */
}
}
/* rest of your code */
第二例
if (h1 < 0 || h2 < 0) {
/* first block code */
}
if (h3 < 0 || h4 < 0) {
/* second block code */
}
注意:不要使用continue,否则会跳过迭代
如果你想在第一个If语句块为true时才运行第二个语句块:
if (h1 < 0 || h2 < 0) {
/* Your code */
if(h3 < 0 || h4 < 0){
/* rest of your code */
}
}
你只需要两个线性if语句。
for (i = 0; i <= 1; i++) {
//I want this to run this statement once and if its true perform all the functions and move to the next one
if (h1 < 0 || h2 < 0) {
alert("negative number is not acceptable here");
document.getElementById("up1").value = document.getElementById("up1").defaultValue;
document.getElementById("q1").value = document.getElementById("q1").defaultValue;
document.getElementById("tot1").value = document.getElementById("tot1").defaultValue;
Total1 = 0.00;
}
if (h3 < 0 || h4 < 0) {
alert("No Negative here as well")
document.getElementById("up2").value = document.getElementById("up2").defaultValue;
document.getElementById("q2").value = document.getElementById("q2").defaultValue;
document.getElementById("tot2").value = document.getElementById("tot2").defaultValue;
}
Total2 = h3 * h4;
}