How can I convert dd.mm.yyyy format date to yyyy-mm-dd format in JavaScript?
Here is an example:
30.01.2010
to
2010-01-30
Meaning
function stringToDate( value ) {
var isEuro = value.match( /^\d{1,2}\.\d{1,2}\.\d{4}$/ )
var isIso = value.match( /^\d{4}-\d{1,2}-\d{1,2}$/ )
if ( isEuro ) {
value = value.split('.')
value = [value[2],value[1],value[0]].join('-') //.reverse() isn't working in IEdge
isIso = true
}
if ( isEuro || isIso ) {
var date = new Date( value )
}
if ( isNaN( date.getTime() ) || !isIso ) {
return false
}
return date
}
stringToDate('30.01.2000') //Sun Jan 30 2000 00:00:00 GMT+0100 (CET)
stringToDate('30.1.2000') //Sun Jan 30 2000 01:00:00 GMT+0100 (CET)
stringToDate('2000-01-30') //Sun Jan 30 2000 01:00:00 GMT+0100 (CET)
stringToDate('2000-1-30') //Sun Jan 30 2000 01:00:00 GMT+0100 (CET)