【问题标题】:Filter array by multiple categories [duplicate]按多个类别过滤数组[重复]
【发布时间】:2020-10-01 20:08:37
【问题描述】:

我有一个场地数组,每个场地可以有多个类别的折扣,用户可以选择按折扣类别过滤场地(用户也可以选择多个类别!),我如何只过滤谁的场地有所选类别的折扣。


let selectedCategories = [1,3];

let venues =
[
    { name:'Venue 1', discountsOfCategoryOneCount:2, discountsOfCategoryTwoCount:4 },
    { name:'Venue 2', discountsOfCategoryOneCount:1, discountsOfCategoryTwoCount:8 },
    { name:'Venue 3', discountsOfCategoryOneCount:4, discountsOfCategoryTwoCount:3 }
];

let filteredResults = venues.filter((item) => /*HOW TO DO THIS*/);

【问题讨论】:

标签: javascript


【解决方案1】:
let selectedCategories = [1, 2];

let venues = [
  { name: 'Venue 1', discountsOfCategoryOneCount: 2, discountsOfCategoryTwoCount: 4 },
  { name: 'Venue 2', discountsOfCategoryOneCount: 1, discountsOfCategoryTwoCount: 8 },
  { name: 'Venue 3', discountsOfCategoryOneCount: 4, discountsOfCategoryTwoCount: 3 },
];

let filteredResults = venues.filter((item) => selectedCategories.indexOf(item.discountsOfCategoryOneCount) !== -1);

console.log(filteredResults);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 2022-01-16
    • 2016-12-22
    • 1970-01-01
    • 2016-10-03
    相关资源
    最近更新 更多