[
{
"project_name": "A",
"key1": "value1"
},
{
"project_name": "B",
"key1": "value1"
},
{
"project_name": "B",
"key1": "value1"
},
{
"project_name": "B",
"key1": "value1"
},
{
"project_name": "A",
"key1": "value1"
},
{
"project_name": "C",
"key1": "value1"
}
]
Consider data longer than this array.
I would like to sort the project_name values starting from the ones with the highest value and not take anything after a certain value in such a data.
For example,
I don't want to take the 2 projects with the highest project_name value and get the rest of the data.
Exepcted output:
[
{
"project_name": "B",
"key1": "value1"
},
{
"project_name": "B",
"key1": "value1"
},
{
"project_name": "B",
"key1": "value1"
},
{
"project_name": "A",
"key1": "value1"
},
{
"project_name": "A",
"key1": "value1"
}
]
const project = [
{
project_name: 'A',
key1: 'value1',
},
{
project_name: 'B',
key1: 'value1',
},
{
project_name: 'B',
key1: 'value1',
},
{
project_name: 'B',
key1: 'value1',
},
{
project_name: 'A',
key1: 'value1',
},
{
project_name: 'C',
key1: 'value1',
},
];
project.sort((a, b) => b.project_name.localeCompare(a.project_name));
const filtered = project.filter(({ project_name }) => {
const highest = project[0];
return project_name !== highest.project_name;
});