gpt4 book ai didi

javascript - 如何优化大量if-else if-else表达式

转载 作者:可可西里 更新时间:2023-11-01 02:33:32 24 4
gpt4 key购买 nike

这是一些示例代码行..

if(loc > 0 || cat > 0 || price > 0 || jsBed <= bedroom || jsBuilt >= built) {    
/// Condition to checn all true
return true;
} else if(loc < 0 || cat > 0 || price > 0 || jsBed <= bedroom || jsBuilt >= built) {
/////// 1 false other are true

} else if(loc > 0 || cat < 0 || price > 0 || jsBed <= bedroom || jsBuilt >= built) {

}

如何处理这些情况。如果我有 5 条语句。然后它必须一个接一个地几乎超过 12 个条件。如果我要检查所有 5 种组合,它会转到更多代码行,我们是否有更好的选择来检查所有条件。

最佳答案

如果您在 javascript 中将 bool 表达式视为整数,它将计算为 0(对于 false)或 1(对于 )。因此,您可以对条件求和,然后使用 switch-case 构造来检查有多少条件为真:

var numTrue = 
(loc > 0) + (cat > 0) + (price > 0) + (jsBed <= bedroom) + (jsBuilt >= built);

switch(numTrue) {
case 0:
// do something if no condition is met
break;
case 1:
// do something else if one condition is met
break;
// etc...
}

关于javascript - 如何优化大量if-else if-else表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44277807/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com