Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Sắp xếp mảng dựa trên sự hiện diện trường trong đối tượng JavaScript

Cho mảng đối tượng:

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 }];

Sắp xếp: object có cả firstName và lastName trước, rồi có một trong hai, cuối cùng không có cái nào.

Ví dụ

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);

Kết quả

Đầu ra console:

[ { 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 } ]