I have an array of objects like below -
const books = [
{
name:"abc",
isbn: 123,
tags: ["tagA","tagB","tagC"]
},
{
name:"xyz",
isbn: 456,
tags: ["tagB","tagC"]
},
{
name:"pqr",
isbn: 456,
tags: ["tagB"]
}
];
I want to group it based on tags
of each object, and push the matched objects into the tags
values which is string array. My expected output shoulb be an object having the grouped value as key and the value should be the array of matched values.
My Expected Output is-
const expected = {
"tagA" : [
{
name:"abc",
isbn: 123,
},
],
"tagB" : [
{
name:"abc",
isbn: 123,
},
{
name:"xyz",
isbn: 456,
},
{
name:"pqr",
isbn: 456,
},
],
"tagC" : [
{
name:"abc",
isbn: 123,
},
{
name:"xyz",
isbn: 456,
},
],
}