javascript - 返回 bool 值的更好方法

标签 javascript reactjs

我写这个是想匹配一个字符串是否匹配数组中的一个字符串。使用 find() 它返回了匹配项,但我只想要一个 bool 值,所以我写了一个 if 语句。关于如何重写此清洁器以获得 bool 值的任何提示或提示?

watchName 属性来自库存 watch 数据的 map()

.map(watch => (
            <WatchItem
              isInCart={this.isInCart(watch.name)}
.....

.

isInCart = watchName => {
  const hasMatch = this.props.cart.find(watch => watch.item === watchName);
  if (hasMatch) {
    return true;
  } else {
    return false;
  }
};

为了更好地了解 this.props.cart 里面的内容,我在下面添加了它 它是一个对象数组。图为index[0]和index 1添加的购物车项目

picture of this.props.cart

我会再次阅读 mdn 文档,但认为最好发帖,以防有人能快速回答。 不胜感激。

最佳答案

您可以改用 Array.prototype.some,它检查数组中的任何元素是否满足条件,并返回一个 bool 值:

isInCart = watchName => this.props.cart.some(watch => watch.item === watchName);

关于javascript - 返回 bool 值的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53675197/

相关文章:

javascript - 在 Django 中使用 Pandas 转换为 JSON

javascript - React 多步表单提交和验证

javascript - Material UI/Webpack/React - 生产模式下的类名优化/缩小

javascript - 许多项目的事件监听器 纯 javascript

javascript - 存储从外部摄像头拍摄的图像并将其存储在数据库中 - Ionic 3

javascript - 如何在 vue.js 2 上获取响应 ajax?

javascript - 使用控制比例线保存 map

javascript - 使用 Jest 测试类组件 firebase 操作

d3.js - Dagre-D3 的 React 组件无法正确绘制

javascript - 如何在组件内为包含图片和 URL 的 LI 项目创建 React Loop?