'filter json array based on multiple arguments including lists [closed]
So I am trying to filter a json array with these two lists. what I want is if any of the element from these lists are in json array I want them in the output. this is my json array.
[{
"sector_code": "0828", "listed_in": ["ALLSHR,KMIALLSHR" ],
},
{
"sector_code": "0828","listed_in": [ "KMI30"],
},
{
"sector_code": "0824","listed_in": ["KSE100,ALLSHR,KMIALLSHR"],
},
{
"sector_code": "0833","listed_in": [ "KSE100", 'KMIALLSHR', 'LST30'],
}]
And I have two arrays one is
listed_inilter = ['KSE100', 'KMIALLSHR']
sector_code = ['0833', '0824']
What I want is output the data from the json array even if any of the value from each list is matching.
Solution 1:[1]
You can try this on. Study about method filter in javascript to know what the code below does.
const array = [{ sector_code: ..., listed_in: ... }]; // your array
const listed_inilter = ['KSE100', 'KMIALLSHR'];
const sector_code = ['0833', '0824'];
function array_subset() {
return array.filter(element => {
const is_listed = listed_inilter.some(item => element.listed_in.includes(item));
const is_sector = sector_code.includes(element.sector_code);
return (is_listed || is_sector)
});
}
console.log(array_subset()); // output the filtered list
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 |
