Javascript – sorting array by multiple criteria

Here is a cleaner and shorter version that does not require a bunch of nested if/else cases:

const sorted = arr.sort((a,b) => {

    const [a1, a2] = a.title.split(' - ').map(Number);
    const [b1, b2] = b.title.split(' - ').map(Number);

    return a1 - b1 || a2 - b2;

});

Leave a Comment