I am taking input from calendar in my screen which is of this type
DD-MMM-YYYY HH:mm a
but user can provide date from keyboard. Now I have to
If you don't have a particular date format then you can also use Array of formats,
moment(checked_date, [DATE_FORMAT1, DATE_FORMAT2]).format(DATE_FORMAT)
=== checked_date
if it's just for checking the below is a better alternative
moment(scope.modelValue, 'DD-MMM-YYYY HH:mm a', true).isValid()
This is much better:
if (!moment(checked_date, DATE_FORMAT).isValid()) throw Error(Argument passed is invalid: checked_date. Date format must be ${DATE_FORMAT}
);
For checking date format you could use:
moment(checked_date, DATE_FORMAT).format(DATE_FORMAT) === checked_date