मान लीजिए हमारे पास ऑब्जेक्ट्स का निम्न ऐरे है:
const people = [
{ firstName: 'Ram', id: 301 },
{ firstName: 'Shyam', lastName: 'Singh', id: 1016 },
{ firstName: 'Dinesh', lastName: 'Lamba', id: 231 },
{ id: 341 },
{ firstName: 'Karan', lastName: 'Malhotra', id: 441 },
{ id: 8881 },
{ firstName: 'Vivek', id: 301 }
];
हमें इस ऐरे को सॉर्ट करना आवश्यक है ताकि दोनों firstName और lastName प्रॉपर्टी वाला ऑब्जेक्ट पहले आए फिर firstName या lastName वाले ऑब्जेक्ट्स और अंत में वे ऑब्जेक्ट्स जिनमें न तो firstName है और न ही lastName।
तो, इसके लिए कोड होगा:
उदाहरण
const people = [
{ firstName: 'Ram', id: 301 },
{ firstName: 'Shyam', lastName: 'Singh', id: 1016 },
{ firstName: 'Dinesh', lastName: 'Lamba', id: 231 },
{ id: 341 },
{ firstName: 'Karan', lastName: 'Malhotra', id: 441 },
{ id: 8881 },
{ firstName: 'Vivek', id: 301 }
];
const sorter = (a, b) => {
if(a.firstName && a.lastName){
return -1;
}else if(b.firstName || b.lastName){
return 1;
}else{
return -1;
};
};
people.sort(sorter);
console.log(people);
आउटपुट
कंसोल में आउटपुट होगा:
[
{ firstName: 'Karan', lastName: 'Malhotra', id: 441 },
{ firstName: 'Dinesh', lastName: 'Lamba', id: 231 },
{ firstName: 'Shyam', lastName: 'Singh', id: 1016 },
{ firstName: 'Ram', id: 301 },
{ firstName: 'Vivek', id: 301 },
{ id: 8881 },
{ id: 341 }
]