Oscar Oscar - 1 month ago 5
Javascript Question

Validate two dates of this "dd-MMM-yyyy" format in javascript

I have two dates

18-Aug-2010
and
19-Aug-2010
of this format. How to find whether which date is greater?

CMS CMS
Answer

You will need to create a custom parsing function to handle the format you want, and get date objects to compare, for example:

function customParse(str) {
  var months = ['Jan','Feb','Mar','Apr','May','Jun',
                'Jul','Aug','Sep','Oct','Nov','Dec'],
      n = months.length, re = /(\d{2})-([a-z]{3})-(\d{4})/i, matches;

  while(n--) { months[months[n]]=n; } // map month names to their index :)

  matches = str.match(re); // extract date parts from string

  return new Date(matches[3], months[matches[2]], matches[1]);
}

customParse("18-Aug-2010");
// "Wed Aug 18 2010 00:00:00"

customParse("19-Aug-2010") > customParse("18-Aug-2010");
// true
Comments