首页 > 解决方案 > 如何修改复杂的过滤器对象(用于搜索数组)

问题描述

我想用多个匹配条件过滤我的对象数组。我有一个例子,但不知道如何修改复杂对象进行过滤。这里的结构例如:

const filters = {
  size: size => size === 50 || size === 70,
  color: color => ['blue', 'black'].includes(color.toLowerCase()),
  locations: locations => locations.find(x => ['JAPAN', 'USA'].includes(x.toUpperCase())),
  details: details => details.length < 30 && details.width >= 70,
};

在我的项目中,我想动态编辑这些值,但我需要为此提供文档或建议。

修改简单的对象很容易,例如

const filters = {
  color: ['BLUE', 'black'],
  size: [70, 50],
};

这很容易用简单的命令修改(如果选择“蓝色”,添加“蓝色”)但是对于第一个代码我找不到基本的方式/文档

标签: javascriptjavascript-objects

解决方案


推荐阅读