问题标签 [logical-or]

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 投票
2 回答
196 浏览

c - 运算符优先级在这个程序中实际上是如何工作的?

我对运算符优先级如何在给定程序中的逻辑表达式的评估中起作用感到困惑。

变量m将被分配01取决于它后面的逻辑表达式的值。

将评估第一个括号,两个 AND 操作的总体结果将为 true 或1。但是,由于使用了短路逻辑 OR,因此不会对第二个括号进行评估。

所以,我的问题是,如果括号的优先级高于该表达式中的所有其他运算符,为什么不先评估两个括号,然后执行 OR 操作?也就是说,为什么输出是0 0 0 2 1而不是0 0 0 3 1

编辑:我所问的与这个(建议重复)有些不同,因为我强调括号括住 OR 运算符的第二个操作数。

0 投票
6 回答
4589 浏览

c - ||, && C 中的运算符

为什么此代码仅适用于&&操作员?

我认为应该是||,但我错了。Choice不能同时等于2个值吗?

我需要询问用户的输入,直到选择等于'a'OR 'd',但为什么我需要写&&?我不明白。

我想使用||,但它不起作用。

0 投票
2 回答
4494 浏览

javascript - 优先级:逻辑或与三元运算符

考虑以下内容:(
编辑:我稍微修改了函数以删除使用三元运算符的使用或大括号)

问题:


我知道这很容易通过使用大括号来解决:


问题:在这种情况下, 为什么||操作员没有捷径?

我知道逻辑 OR 在二元逻辑条件运算符中的优先级最低,但认为它的优先级高于条件三元运算符?

我是否误读了MDN 文档中的运算符优先级

0 投票
2 回答
121 浏览

if-statement - 或内部条件

我有这个代码:

现在碰巧我还有 3 种事件类型,它们都适合其他 3 种中的一种——我认为我需要一个 OR。

但是经过几次尝试,我一直无法弄清楚该怎么做。这不起作用:

也不是类似的东西

也不

如何正确地做到这一点?

0 投票
2 回答
92 浏览

c++ - C++ if 语句将条件设置为 true 和循环中的条件之间的行为差​​异

我正在为我的 CS 课程开发 Datalog 解释器,我遇到了一个奇怪的问题,即我的规则评估需要通过太多次才能完成。查看我的代码后,我在以下内容中进行了两项修改,修复了我的评估以正确执行次数:

对我来说,这两种代码结构在逻辑上是等价的。一个执行正确而一个执行不正确/效率低下是否有原因?这是正在发生的问题的可构建示例:

在 Visual Studio 2017 上以调试和发布模式(32 位)运行时,我得到以下输出。据我所知,代码未优化。

0 投票
1 回答
63 浏览

excel - Excel 验证中的 OR 函数是否损坏?

我正在尝试在 Excel 中编写一个自定义验证函数,以确保单元格中的文本以http://or开头https://。如果我使用公式

=EXACT(LEFT(INDIRECT("Z"&ROW()), 8), "https://")

验证有效,但仅检查 https://。如果我添加这样的 OR

=OR(EXACT(LEFT(INDIRECT("Z"&ROW()), 8), "https://"), EXACT(LEFT(INDIRECT("Z"&ROW()), 7), "http:// "))

这没用; 它总是评估为假。然后我尝试了以下方法来测试 OR 函数:

=OR(精确(左(间接(“Z”&ROW()),8),“https://”),真)

这也评估为 FALSE!我疯了还是 OR 函数坏了?我发现将这个方程粘贴到单元格中时效果很好。它仅在用作自定义验证功能时才起作用。

0 投票
2 回答
76 浏览

c - 解释逻辑

谁能解释一下逻辑,输出是11,2,0,1

0 投票
0 回答
107 浏览

java - java - 使用后短路|

我在 dmoj 上做了一个问题,它说有一个短路错误。

我在另一篇文章中读到,为了防止短路错误,请使用 single|而不是||. 但是,当我将 if 语句切换为使用 single|时,它​​仍然给了我同样的错误。

0 投票
2 回答
1008 浏览

angular - rxjs 中是否有逻辑或类型运算符?

我有一个角度服务,我想在其中公开一个充当逻辑“或”的可观察对象。假设我有多个可以给出onoff值的源序列。我需要在true任何时候输出任何东西on,然后回到false所有值都是off

例子:

现在,我试过了result$ = Observable.merge(first$, second$),但总是给出on。我也尝试过result$ = combineLatest(first$, second$),所以这有点好,但是我的输入不同步,所以它并不总是完美的。我的意思是, first$ 可能会发出多个值,而 second 可能永远不会触发,反之亦然。我还可以做些什么?

我想到了一些 mergeMap 或类似的东西,然后将状态保持在外部上下文中,这样我就可以在任何事件上运行更新。但是后来我遇到了一个问题,“关闭”事件可能意味着“关闭”,但前提是其他序列也“关闭”,所以它很快就会变得棘手。

0 投票
3 回答
414 浏览

angular - 如何在angular4中的ngif中使用'or'语句?

我正在使用 angular4,我下面的代码试图显示基于状态变量的信息。

我正在使用'||' 表示“或”语句。

现在状态变量='canceled',通常它不应该显示'something',但是在测试中'something'文本仍然存在。

如果我使用下面的语句,则“某事”文本会消失。

如果我使用了该语句,它仍然不起作用,所以它似乎不是订购问题。

哪里不对了?