javascript - 如果值为假,则使用逻辑运算符返回未定义

标签 javascript reactjs

我想在 react 应用程序的组件中显示一列,其中包含数据库中的值。如果该值是假的,我不想显示该列。

从数据库获取的值可以是 null ,或任何 0 或更大的数字。

<>
{this.state.likeCount &&
    <div className="col">
        <p>Like Count: {this.state.likeCount}<>
    </div>
}
</>

但是,在上面的片段中 if likeCount为 0 时,逻辑 && 运算符将返回不带列分量的假值 0。是否还有另一个我可以使用的运算符 if likeCount是 false 没有返回任何内容吗?

我知道我可以使用条件(三元)运算符并将第三个操作数指定为 undefined ( <>{likeCount ? ... : undefined}</> )但因为我一直想要 undefined返回我想知道是否有另一种方法可以做到这一点,我不必每次都指定第三个操作数?

最佳答案

将 JavaScript 中的任何值转换为 bool 值的快速技巧(逻辑运算符):双 NOT !!

 const value = 0
 console.log(!!value) // false

或者正如您在 React 中询问的那样,它看起来更接近:

 {!!this.state.likeCount && (<div>foo bar</div>)}

玩得开心!

关于javascript - 如果值为假,则使用逻辑运算符返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64055408/

相关文章:

javascript - 无法得到我在 nodejs/mongoose/bluebird 中返回的 promise

javascript - 将培根流中的所有值组合成一个数组

javascript - 如何在 React js 中正确地遍历通过 Wp Rest Api 检索到的帖子对象数组

javascript - Webpack 配置的 React 组件不受 css 影响

javascript - React 中的 Video.js 播放列表

javascript - ESLint: 'Helmet' 未定义 react/jsx-no-undef

javascript - NodeJS 处理发布文件并返回文件

javascript - 从 Jquery slider 提交值

javascript - 无法使用 AJAX 获取 PHP 变量

javascript - ReactJS:从列表中删除没有ID的项目?