fast-sort

Mit Fast-Sort lässt sich ein Array sortieren. In die Funktionen sort.asc() oder sort.desc() lassen sich weitere Funktionen einfügen, um zu bestimmen nach welchen Kriterien sortiert werden soll.

/**

* Sorts the given data based on the specified key and order.
* @param {Array} data - The data to be sorted.
* @param {string} key - The key to sort the data by (e.g., 'year', 'artists', 'title').
* @param {boolean} [isAscending=true] - The order of sorting, default is ascending.
* @returns {Array} - The sorted data.

*/

function sortData(data, key, isAscending = true) {

let sortedData;

switch (key) {

case 'year':

sortedData = isAscending ? sort(data).asc((u) => u.jahr) : sort(data).desc((u) => u.jahr);

break;

case 'artists':

sortedData = isAscending

? sort(data).asc((u) => u.expand.artists[0].name)

: sort(data).desc((u) => u.expand.artists[0].name);

break;

case 'title':

sortedData = isAscending ? sort(data).asc((u) => u.title) : sort(data).desc((u) => u.title);

break;

}

return sortedData;

}