Madeas
@Madeas
UX/UI designer | Frontend developer

Как сравнить две даты на vuejs?

День добрый!
Подскажите, реально ли сравнить даты, если:

1. в data() {...} пока вывел так:
isTodayDate: new Date().toISOString().slice(0, 10) возвращает формат 2020-03-03
Все что смог...

2. в JSON'e формат даты - String
list: [
        {
          ...,
          ...,
          dateend: "31.05.2018"
          ...,
        },
        {
          ...,
          ...,
          dateend: "03.04.2021"
          ...,
        },
        {
          ...,
          ...,
          dateend: "31.03.2018"
          ...,
        },
        {
          ...,
          ...,
          dateend: "31.03.2018"
          ...,
        }
      ]


Нужно сравнить и сделать фильтр с условием, что дата в json файле меньше текущей.
  • Вопрос задан
  • 85 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
data: () => ({
  now: Date.now(),
  ...
}),
computed: {
  filteredList() {
    return this.list.filter(n => new Date(...n.dateend.split('.').reverse()) < this.now);
  },
},
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
yarkov
@yarkov Куратор тега Vue.js
https://github.com/yarkovaleksei/toster-extension
Преобразовываем дату в YYYY-MM-DD:
"31.05.2018".replace(/(\d{2}).(\d{2}).(\d{4})/, '$3-$2-$1') // "2018-05-31"

Сравниваем даты: new Date("2018-05-31") < new Date()
Ответ написан
Ваш ответ на вопрос

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

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