【发布时间】:2021-04-19 03:28:41
【问题描述】:
在render() 的反应中,当 x 的值等于 1 时,逻辑 && 和三元运算符都将显示 Hello 并且两者在语法上都是正确的。当我不想显示我的条件的 else 部分时,我总是使用 &&,但我遇到了一个代码库,其中大多数地方使用三元运算符 null 而不是 &&。使用一种方法相对于另一种方法是否有任何性能提升或任何其他优势?
return (
<div>
<div>{x === 1 && <div>Hello</div>}</div>
<div>{x === 1 ? <div>Hello</div> : null}</div>
</div>
);
【问题讨论】:
-
如果您的条件使用严格(或松散比较),那么您可以使用
&&运算符。如果您只是检查一个真实值,例如x && <div>Hello</div>如果x可能最终使用该值,您将呈现0。一个常见的场景是检查数组的长度,如果是空数组,您可能不想渲染任何东西,但最终会渲染0
标签: javascript reactjs jsx conditional-operator