标签: ternary

嵌套大括号导致 React 中的三元错误

我有以下反应功能组件:

const EventRow = props => {
  const { key, date, name, ticketLink, location } = props;

  return (
    <tr key={key}>
      <td> {date} </td>
      <td className="events-italic">
        {
          ticketLink.length > 0 ? <a href={ticketLink}>{name}</a> : {name} 
        }
      </td>
      <td> {location} </td>
    </tr>
  );
};
Run Code Online (Sandbox Code Playgroud)

如果存在 TicketLink 属性,这应该渲染一个带有超链接的名称,否则它应该只渲染该名称。

如果我按原样使用代码,则会收到错误:

Objects are not valid as a React child (found: object with keys {name}). If you meant to render a collection of children, use an array instead.

这显然是因为,正如{name}被两组大括号包围的那样,React 认为它是一个对象而不是字符串。

我知道我可以分解代码并使用 if / …

ternary reactjs

1
推荐指数
1
解决办法
3904
查看次数

在 C 中使用空字符

我想使用三元运算符和空字符 '' 来正确拼写单词“neightbor”(带或不带“s”)。

我想做以下事情:

printf("There is %d neightbor%c\n", nbNeighbors,  (nbNeighbors>1)?'s':'');
Run Code Online (Sandbox Code Playgroud)

显然,我得到了一个arrorerror: empty character constant

我怎样才能使用这个技巧来获得正确的拼写printf

c printf char ternary

1
推荐指数
1
解决办法
119
查看次数

了解三元运算符

我有以下代码:

c.m & 3 || (b |= 2, 
  65 <= a && 90 >= a ? a = 65
: 48 <= a && 57 >= a ? a = 48
: b & 1 ? 97 <= a && 122 >= a ? a = 65
: 197 == a || 229 == a ? b &= 5
: 192 <= a && 687 >= a ? a = 192
: 1536 <= a ? a = 1536
: …
Run Code Online (Sandbox Code Playgroud)

javascript ternary

0
推荐指数
1
解决办法
1741
查看次数

在三元运算中设置for循环

只是为了踢和咯咯笑,是否有可能在三元操作中放置一个'for'循环?

这是用于查找数字是否为素数的代码:

int isPrime(int number){
 int i, root = sqrt(number)+1; 

 if(number==1||!(number)||!(number&1)) return 0;            
 if(number==2)                         return 1;
 for(i=3;i<root;i+=2) if(!(number%i))  return 0;

 return 1;
Run Code Online (Sandbox Code Playgroud)

}

这是我"思想"的开始:

 int isPrime(int number){
      return number&1 || !(number&1) || number==2 ? 0:1;
 }
Run Code Online (Sandbox Code Playgroud)

可以在那里添加for循环检查吗?

c loops for-loop ternary

0
推荐指数
1
解决办法
2219
查看次数

三元运算符破坏OR条件

执行声明

true || true ? false : true
Run Code Online (Sandbox Code Playgroud)

回报false.

不应该是真的,因为OR条件不会执行三元运算(右侧部分)?

java ternary

0
推荐指数
1
解决办法
56
查看次数

理解三元声明

我已经准备好了一些旧的代码,并且遇到了这个问题:

$sal = isset($_REQUEST['c_sal']) ? " " : ($_REQUEST['sal'] ? (Valid($_REQUEST['sal']) ? $_REQUEST['sal'] : false) : null);
Run Code Online (Sandbox Code Playgroud)

我正试图弄清楚它的作用.我知道它正在进行某种形式的验证......但是如何将其恢复为简单的if elseif语句?

所以我可以准确理解它在做什么?

php ternary

0
推荐指数
1
解决办法
53
查看次数

三元运算符的PHP错误?

function foo() {
    return $result = bar() ? $result : false;
}

function bar() {
    return "some_value";
}

foo();
Run Code Online (Sandbox Code Playgroud)

注意:未定义的变量:结果

这是一个错误吗?

bar()应该保存到$ result,但它不会.但是条件工作正常并且它试图返回$ result或false语句(如果bar()为NULL或false)

PHP 5.4.24

php ternary operator-keyword

0
推荐指数
1
解决办法
508
查看次数

有没有办法缩短这段代码?也许是三元表达?

    if (i <= 33) {
            variable = x;
        } else if (i > 33 && i <= 66) {
            variable = y;
        } else {
            variable = z;
        }
Run Code Online (Sandbox Code Playgroud)

有没有办法缩短这个?在这种情况下,我无法找到如何使用三元运算符.

java ternary

0
推荐指数
1
解决办法
136
查看次数

使用C#三元运算符

可能是一个简单的语法问题.这是对控制台程序的尝试,该程序读取通过用户输入接收的字符串的长度.如果长度大于144,则通知用户字符串长度太长,否则输入的字符串仅输出到控制台.

string input = Console.ReadLine();
(input.Length > 144) ? Console.WriteLine("The message is too long"); : Console.WriteLine(input);
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)

在第2行获取当前状态的语法错误.我错过了括号吗?

c# ternary operator-keyword

0
推荐指数
1
解决办法
413
查看次数

执行三元运算符

#include <stdio.h>

#define max(x,y)(x)>(y)?x:y

int main() {
    int i = 10;
    int j = 5;
    int k = 0;
    k == max(i++, ++j);
    printf("%d%d%d ", i, j, k);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我知道答案.这是11 7 0怎么回事?请帮我执行三元运算符.

c macros ternary operator-keyword

0
推荐指数
1
解决办法
232
查看次数

标签 统计

ternary ×10

c ×3

operator-keyword ×3

java ×2

php ×2

c# ×1

char ×1

for-loop ×1

javascript ×1

loops ×1

macros ×1

printf ×1

reactjs ×1