问题标签 [short-circuiting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1648 浏览

scheme - 计划提前“短路退货”?

我试图找出如何在使用顶级ifcond类似构造的情况下在方案过程中进行“提前返回”。

例如,在上面的代码中,如果满足条件,我想win返回,否则返回 0。但是,发生的情况是,无论条件的结果如何,过程都将始终返回 0 。testwhenwhen

我以这种方式构造我的代码的原因是因为在这个过程中我需要进行大量复杂的检查(多个块类似于let*示例中的块)并且将所有内容放在一个大cond文件中会非常笨拙。

0 投票
4 回答
121093 浏览

python - Python是否支持短路?

Python 是否支持布尔表达式中的短路?

0 投票
6 回答
9844 浏览

c# - 短路声明评估——这是有保证的吗?[C#]

关于 C# 中的短路语句的快速问题。使用这样的 if 语句:

如果该部分为真,是否保证评估将在“MyArray.Count”部分之后停止?否则我会在第二部分得到一个空异常。

0 投票
1 回答
2441 浏览

vb.net - 使用 VB.Net 和/或运算符进行逻辑短路:任何编译器指令/解决方法?

我发现一直使用 AndAlso/OrElse 非常烦人。它降低了代码的可读性,尤其是在条件变得复杂时。

有什么建议么?

0 投票
2 回答
6064 浏览

java - 在 Java 中 &= 和 |= 会短路吗?

换句话说,以下两个语句的行为方式是否相同?

我意识到我可以写一个测试,但有人可能会立即知道这一点,而其他人可能会发现答案很有用。

0 投票
2 回答
5906 浏览

php - PHP短路偷懒评测,php.net手册在哪里?

对不起,如果这听起来像一个非常愚蠢的问题。

但我用谷歌搜索了网络,还专门用谷歌搜索了 php.net 网站和 stackoverflow.com 网站。 我知道 PHP在使用操作符时会进行短路惰性求值and, or, &&, ||,但是 PHP 手册中哪里清楚地说明了这一点???

我发现只有维基百科是唯一一个说 PHP 对这些运算符进行惰性评估的“可信”来源。

0 投票
2 回答
3538 浏览

c# - 在执行相同功能时如何避免 C# 中的短路评估

我们在 C# 中是否有任何运算符可以避免短路评估并遍历所有条件。

无论获得的输出如何,它都应该评估所有条件。并在评估最后一个条件后根据获得的结果继续。?

0 投票
8 回答
263812 浏览

php - 如何在 Twig 中检查 null?

我应该使用什么构造来检查 Twig 模板中的值是否为 NULL?

0 投票
4 回答
525 浏览

c# - 使用可选搜索子句执行 LINQ 查询

我有一个页面,您可以在其中搜索人。他们可以获取所有人的列表,也可以通过某些标准(例如名字或姓氏)对其进行过滤。

到目前为止,我一直在尝试使用这个问题中详述的技术。

所以我的代码看起来像

构建查询时出现空引用错误,但是当名字和姓氏都为空时。删除 where 子句可以消除错误。

为什么这行不通?C# 是否尝试评估 where 子句每个部分的第二部分?这不应该是因为短路或对吗?

0 投票
2 回答
616 浏览

java - Bitwise AND (&) expression in Java

I am debugging code that has in it expr1 & expr2 where expr1 has a side effect that affects expr2 evaluation result. I suspect that expr2 gets evaluated before expr1, since JLS guarantees left-to-right evaluation for &&, but not necessarily for &. I also suspect that change of evaluation order may be a result of optimization performed by HotSpot (we're running Java 6u20). Do you know if HotSpot can make such an optimization? Better yet, provide any pointers to documentation that either support or eliminate the suspicion. Thanks in advance.

EDIT: Thanks for those suggesting to rewrite the code so it's both correct and readable - you're right, but I already did, so it's not what I am looking for. Unfortunately it is hard to test the change, which is why I'm asking the question here.