我被数组、对象和过滤器困住了。我有以下代码,我想用我的过滤器设置过滤(数组)列表。然后用它做一些事情。我使用 React 作为框架。但我认为这是纯 Javascript。
我是在正确的方向吗?
filterSettings = { flagA: false, flagB: true, FlagC: true};
list = [
{flag: a, txt: 'some text1'},
{flag: a, txt: 'some text2'},
{flag: b, txt: 'some text3'},
{flag: b, txt: 'some text4'},
{flag: c, txt: 'some text5'},
{flag: c, txt: 'some text6'},
]
list.filter(
// if(filtersettings.a === true) show flags with a
//else{hide flags with a}
// if(filtersettings.b === true) show flags with b
//else{hide flags with b}
///...ect
).map((item)=>{
console.log(item);
});
如果您使filterSettings
键与标志值对应,您可以使用该filterSettings
值(这是一个布尔值)作为过滤器的测试:
let filterSettings = { a: false, b: true, c: true};
let list = [
{flag: 'a', txt: 'some text1'},
{flag: 'a', txt: 'some text2'},
{flag: 'b', txt: 'some text3'},
{flag: 'b', txt: 'some text4'},
{flag: 'c', txt: 'some text5'},
{flag: 'c', txt: 'some text6'},
]
let filtered = list.filter( item => filterSettings[item.flag]) // filterSettings[item.flag] will be a boolean
console.log(filtered)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句