правильный способ форматирования даты в зависимости от сценария

#javascript #ecmascript-6 #date-fns

Вопрос:

У меня есть сценарий, в котором я могу назначить свидание в виде строки. Он может быть отформатирован как:

2021-05-29

29-05-2021

Я использую dateFns для анализа строк, но когда строка имеет формат 2021-05-29, она не может проанализировать строку, поэтому, когда она имеет формат 2021-05-29, ее необходимо преобразовать в 29-05-2021…

Функция parse() из dateFns на самом деле то, что мне нужно было для ее анализа в правильном формате, но, похоже, она не работает при прохождении 2021-05-29

 return parse(date, 'mm-dd-yyyy', new Date());
 

Есть идеи, как с этим справиться?

Ответ №1:

Вы могли бы попробовать изменить дату,

 date = date.split(“-“).reverse().join(“-“)
 

Комментарии:

1. Да, но как мне это сделать ТОЛЬКО в тех случаях, когда я получаю дату в неправильном формате? Я не хочу делать это для правильных отформатированных дат…

2. Вы можете проверить, соответствует ли date.charAt(2)==‘-‘