StackOverflow Date parse
Return date from validated string of form YYYYMMDD
by Hans PUFAL
HTML
<a href="http://stackoverflow.com/questions/10638529/how-to-parse-a-date-in-format-yyyymmdd-in-javascript#10638617">How to parse a date in format “YYYYmmdd” in JavaScript?</a><br/>
JavaScript
function parse (str) {
// validate year as 4 digits, month as 01-12, and day as 01-31
if ((str = str.match (/^(\d{4})(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])$/))) {
// make a date
str[0] = new Date (+str[1], +str[2] - 1, +str[3]);
// check if month stayed the same (ie that day number is valid)
if (str[0].getMonth () === +str[2] - 1)
return str[0];
}
return undefined;
}
document.write (parse('20120517'));