我正在尝试在view.onFrame(纸张js)中编写一个条件,这是普通画布中的更新功能。
//声明
cid st_date end_date
1 20190110 20190123
2 20190101 20190117
2 20190119 20190127
2 20190201 20190210
//开始调节 //如果数字变为75且为负,则数字将开始减少
let number = 74;
let minus = true;
view.onFrame = function(event) {
//如果数字达到0,数字将增加到75,并且条件变为假
if(number <= 75 && minus == true){
number -= 1;
minus = true;
}
//否则负号再次变为真
else if(number == 0){
number += 1;
minus = false;
}
问题在于条件永远不会变为真
答案 0 :(得分:0)
这是您的逻辑结构中的一个问题。您想从75开始,然后递减到0,然后又回到75,但是让我们看看您的逻辑。
if(number <= 75 && minus == true){
number -= 1;
minus = true;
}
else if (number == 0) {
number += 1;
minus = false;
}
第一个条件number <= 75
是正确的,即使number == 0
(毕竟0小于或等于75)也是如此,因此它将始终开始执行第一个if
语句,并且永远不要进入else if
语句。最重要的是,您仅在number += 1
完全为(number
)0时执行==
。因此,即使您确实清除了逻辑,该代码的输出也将看起来像75 ,74,73 ... 3,2,1,0,1,0,1,0,1 ...
您想要的是检查是否退出设置的边界,如果有,请更改是递增还是递减:
if (number > 75) { minus = true }
if (number < 1) { minus = false }
if (minus) { number -= 1 } else { number += 1 }