MomentJS преобразует дату из строки в свой объект перед выполнением операций над ним.Если формат не указан, он принимает форматы по умолчанию.Операция разбора объясняется здесь: https://momentjs.com/docs/#/parsing/string/
Итак, в вашем случае вы должны передать формат даты при создании объекта момента.Например:
var dateFormat = "DD/MM/YYYY";
moment("12/13/2018",dateFormat).isValid() //will return false
moment("13/12/2018",dateFormat).isValid() //will return true
Обновление:
MomentJS позволяет анализировать дату, даже если указанная дата содержит другие символы, кроме формата.Например, «1A / 2B / 2018» будет считаться действительной датой как «1/2/2018».
Введите, чтобы избежать этого, и проверьте формат и дату, чтобы точно соответствовать моменту объектадолжен быть передан дополнительный логический тип для включения строгого режима.
moment("1A/2B/2018", dateFormat).isValid() //will return true
moment("1A/2B/2018", dateFormat, true).isValid() //will return false