Reputation: 1
I have simple array with JSON items:
array = [
{number: 9, item: 'Item 1', descripton: 'abc'},
{number: 5, item: 'Item 2', descripton: 'def'},
{number: 9, item: 'Item 2', descripton: 'ghi'},
{number: 9, item: 'Item 1', descripton: 'xyz'},
]
how can I get arrays with same parameters of JSON key ('number', 'item'), and get new array like this:
array = [
[
{number: 9, item: 'Item 1', descripton: 'abc'},
{number: 9, item: 'Item 1', descripton: 'xyz'},
],
[
{number: 5, item: 'Item 2', descripton: 'def'},
],
[
{number: 9, item: 'Item 2', descripton: 'ghi'},
]
]
I tried using the .sort()
and .filter()
methods, but I can not get result where I need.
Upvotes: 0
Views: 67
Reputation: 11
array = [
{
number: 9,
item: 'Item 1',
descripton: 'abc'
},
{
number: 5,
item: 'Item 2',
descripton: 'def'
},
{
number: 9,
item: 'Item 2',
descripton: 'ghi'
},
{
number: 9,
item: 'Item 1',
descripton: 'xyz'
},
];
array.sort((a, b) => {
if (a.item > b.item) {
return 1;
} else {
return -1;
}
});
console.log(array);
If you run the above js you will get output like this..
[
{ number: 9, item: 'Item 1', descripton: 'xyz' },
{ number: 9, item: 'Item 1', descripton: 'abc' },
{ number: 9, item: 'Item 2', descripton: 'ghi' },
{ number: 5, item: 'Item 2', descripton: 'def' }
]
Upvotes: 1