Demigodd
@Demigodd

Как сортировать объекты в массиве по дате и переместить эти объекты в начало массива?

Песочница

Функция hasMoveToTop перемешает вверх массива те объекты у которых has == true. Но как дальше их сортировать по дате (по возрастанию) ?
И можно ли все это сделать в Reduce без лишних итераций ?
  • Вопрос задан
  • 73 просмотра
Решения вопроса 2
AlexKeller
@AlexKeller
Сделай в 2 сортировки
function hasMoveToTop2(array) {
    array.sort((a, b) => {
      if (new Date(a.date) < new Date(b.date)) return -1;
      if (new Date(a.date) > new Date(b.date)) return 1;
      return 0;
    })
    array.sort((a, b) => {
      if (a.has) return -1;
      if (b.has) return 1;
      return 0;
    });
    return array;
}
Ответ написан
Комментировать
RAX7
@RAX7
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы