我不理解此JavaScript(JSX)语法中的&& [英] I don't understand && in this JavaScript (JSX) Syntax

查看:35
本文介绍了我不理解此JavaScript(JSX)语法中的&&的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的理解是&&是&q;和&q;运算符。代码挡路中&&后面的内容如何返回布尔值?

{accounts.length > 0 && (
        <View>
          {accounts.map((account) => (
            <AccountListItem
              key={account.mask}
              account={account}
              selectedAccount={selectedAccount}
              setSelectedAccount={setSelectedAccount}
            />
          ))}
        </View>
  )}

推荐答案

expr1 && expr2works like this

如果expr1可以转换为true,则返回expr2;否则,返回expr1。

expr1accounts.length > 0

  • 如果为false,则无法转换为true,因此整个表达式的计算结果为false
  • 否则为true,因此整个表达式的计算结果为expr2,在本例中为View组件。

在Reaction中,false不呈现任何内容。您可以用以下最小示例验证这一点:

const Test = () => <>before{false}after</>

ReactDOM.render(<Test />) // renders as "beforeafter"

换句话说,在我们的示例中,如果accounts.length为0,则返回false,不呈现任何内容;否则,返回View,呈现。

这篇关于我不理解此JavaScript(JSX)语法中的&amp;&amp;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆