@Peacefulwarriorr

Как свести 2 функции к одной?

Есть две функции, одна для сортировки по датам, другая по числам, они почти одинаковые, только обращаются к разным свойствам объекта. Как можно свести это все к использованию только одной функции?
const sortByAlphabeticalOrder = (array) => {
    array.sort((a, b) => {
        if (a.text < b.text) return -1;
        if (a.text > b.text) return 1;
        return 0;
    });
};

const sortByDate = (array) => {
    array.sort((a, b) => {
        if (a.createDate < b.createDate) return -1;
        if (a.createDate > b.createDate) return 1;
        return 0;
    });
};
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
WblCHA
@WblCHA
const sortBy = (arr, property) => {
    arr.sort((a, b) => {
        if (a[property] < b[property]) return -1;
        if (a[property] > b[property]) return 1;
        return 0;
    });
};
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Robur
@Robur
Знаю больше чем это необходимо
свойство можно передавать параметром вместе с array и писать a[prop] <b[prop]
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы