JSFiddle - React, Tailwind, and code Playground
JavaScript
(function() {
var nativeParse = Date.parse;
var parsers = [];
Date.parse = function(datestring) {
for (var i = 0; i<parsers.length; i++) {
var parser = parsers[i];
if (parser.re.test(datestring)) {
datestring = parser.handler(datestring);
break;
}
}
return nativeParse.call(this, datestring);
}
Date.defineParser = function(pattern, handler) {
parsers.push({re:pattern, handler:handler});
}
}());
Date.defineParser(/\d*\+\d*\+\d*/, function(datestring) {
return datestring.replace(/\+/g, "/");
});
console.log(Date.parse("10+16+1980"));