В идеале вы должны использовать формат даты без учета региональных параметров, например «2012-03-19», который недвусмыслен во всем мире.Тем не менее:
var dateStr = "20120319";
var match = dateStr.match(/(\d{4})(\d{2})(\d{2})/);
var betterDateStr = match[2] + '/' + match[3] + '/' + match[1];
будет делать то, что вы хотите.Это жесткие коды MDY.Если вы хотите использовать DMY, как это используется в большинстве стран Европы, то поменяйте местами match[2]
и match[3]
.
. Если вы хотите, чтобы эвристика обнаружила, предпочитает ли текущий языковой стандарт месяц или день, то
(new Date('01/02/1970').getDate() === 2)
может помочь.