【发布时间】:2017-09-26 06:52:00
【问题描述】:
这个好像是真的。如何将其减少为一个 if 语句?
let combined = true;
if(earlyCallback){
combined = self.allChildBlocksCompleted;
}
if (self.parent && combined) { // I want to put everything here
}
这对吗?
if(self.parent || (earlyCallback && self.allChildBlocksCompleted)){
}
我认为这是对的,但我现在不能说。
【问题讨论】:
-
是的,我的解决方案是错误的,因为 self.parent 总是要求为真,所以
logical or不起作用。 -
不就是
self.parent && (earlyCallback && combined)吗? -
@Andy 我也是这么想的,但是您的解决方案的问题是,如果 earlyCallback 为假,那么 if 语句的计算结果为假。但我希望如果 earlyCallback 为假,那么 if 语句仍有机会评估为真。
-
大声笑为什么这么难哈哈
-
我的原始代码(在 OP 的顶部)是正确的。我只是对如何减少它感到好奇,因为我知道它可以减少至少一个变量。
标签: javascript logic