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

Sắp xếp mảng đối tượng theo thuộc tính không nhất quán (có thể null) trong JavaScript

Mảng chứa các đối tượng, một số có thuộc tính date (chuỗi), một số không có hoặc null. Yêu cầu: đối tượng không có date lên đầu, sắp xếp theo tên; đối tượng có date theo sau, sắp xếp theo date.

Ví dụ

const sorter = ((a, b) => {    if (typeof a.date == 'undefined' && typeof b.date != 'undefined') {       return -1;    }    else if (typeof a.date != 'undefined' && typeof b.date == 'undefined') {       return 1; }    else if (typeof a.date == 'undefined' && typeof b.date == 'undefined') {       return a.name.localeCompare(b.name);    }    else if (a.date == null && b.date != null) {       return -1;    }    else if (a.date != null && b.date == null) {       return 1;    }    else if (a.date == null && b.date == null) {       return 0;    }    else {       var d1 = Date.parse(a.date);       var d2 = Date.parse(b.date);       return d1 - d2;    } });