问题标签 [ternary]

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 投票
16 回答
2465 浏览

c# - 这是对三元运算符的合理使用吗?

是否有任何由代码导致的理解/可维护性问题,例如

等等。

可能令人困惑的想法是使用三元运算符进行程序流而不是变量赋值,这是通常的解释。

我还没有看到工作中解决这种用法的编码标准,所以虽然我很乐意这样做,但我想知道是否有充分的理由不这样做。

0 投票
2 回答
1332 浏览

php - 这是什么意思?expr1 = expr2 模 expr3 = 0

所以我将一个 VBA 应用程序移植到 PHP 并遇到了这个美妙的小代码块:

我认为它的行为类似于三元运算符,但是当我将其分解为简单的 if then 语句时,结果并不像预期的那样。所以我请求出色的堆栈溢出社区来帮助我,并用易于理解的术语来表达。我知道通过查看其他答案,我不会失望。[/结束 brown_nose>]

0 投票
4 回答
882 浏览

php - PHP三元运算符不起作用

下面的代码采用一个数组值,如果它的键存在,它应该回显它的值,三元 if/else 部分有效但值没有显示,任何人都可以弄清楚为什么它不会?

另外,我在哪里回显错误,如果键不存在,我不需要输出,我应该删除单词 false 还是有其他东西使代码只显示 1 个值?

0 投票
4 回答
3448 浏览

c++ - 三元运算符求值顺序

在上面的例子中,如果 some_condition 为真,为什么 test 等于 6(而不是 6.1)?

更改如下代码返回值 6.1

似乎(在原始示例中)来自 Foo::operator double 的返回值被强制转换为 int,然后返回为 double。为什么?

0 投票
2 回答
4774 浏览

c# - C# 中哪个三元运算符最流行和最常用?

C# 中哪个三元运算符最流行和最常用?

0 投票
3 回答
735 浏览

javascript - 用 JavaScript 编写这些语句的简洁而健壮的方法是什么?

我有一个 <iframe> 使用在父文档的对象文字中设置的一些变量。这些变量是可选的;如果它们已设置,我想使用它们的值,将它们分配给更简洁的全局变量;如果没有,我想调用函数error()。

首先,这个三元运算符语句对我想做的事情有效吗?这里有什么潜在的陷阱吗?

其次,是否有更简洁的方式来编写该语句?

其中一些变量是可选的,但如果定义,则具有可接受的值范围。什么是处理这个问题的可靠方法?像这样的东西?

基本上,如果它未定义或超出范围,我想使用默认值。

我可以只依赖一个条件语句,例如:

还是我需要检查它是否未定义,像这样?

有没有更健壮和/或更简洁的东西?感谢您的任何建议。

0 投票
4 回答
2038 浏览

c# - 如何使用具有两个字节值的 C# 的三元运算符?

似乎没有办法在两个字节上使用 C# 的三元运算符,如下所示:

该代码当前无法使用“无法将源类型'int'转换为目标类型'byte'”进行编译,因为编译器将数字视为整数。显然没有指定的后缀来指示 0 和 1 是字节,因此唯一的解决方法是 (a) 将结果转换为字节或 (b) 毕竟使用 if-else 控件。

有什么想法吗?

0 投票
1 回答
774 浏览

entity - 实体关系模型:三元关系

我试图理解为什么书中的这句话是错误的:“给定一个 C 实体,最多有一个相关的 A 实体和最多一个相关的 B 实体”。难道它不适用于特定类型的关系?所以,如果我有一个学生参加某门学科课程的例子。实体是学生、出勤率、课程和科目。学生在房间里出勤。此外,学生可以参加一门学科。此示例是否适用于该语句?

谢谢你的时间。

0 投票
2 回答
19964 浏览

c - ?:将一个表达式留空时的三元条件运算符行为

我正在编写一个控制台应用程序,它会尝试通过反复试验来“猜测”一个数字,它工作得很好,但它让我想知道我心不在焉地写的某个部分,

代码是:

更具体地说,让我感到困惑的部分是

我曾经((100/(i<<=1))?:1)确保如果100/(i<<=1)返回 0 (或 false),整个表达式将评估为 1 ((100/(i<<=1))?:***1***),并且我将条件的一部分留给如果它为 true 将起作用 empty ((100/(i<<=1))? _this space_ :1),它似乎可以正常工作,但是离开有任何风险那部分条件为空?

0 投票
5 回答
45517 浏览

c++ - 三元运算符c ++中的return语句

我使用三元运算符编写了绝对函数,如下所示

我收到以下错误消息

如果我这样写

我没有收到任何错误。两者有什么区别?