2016-06-15 24 views
0

Ich habe ein Datum im Format YYYYMMDDTHHMMSS und müssen das Datum im Format DD.MM.YYYY HH:MM:SS erhalten. ich so:Parse von String zu DateTime

var dateTimeFormat; 
var dateAsString = dataTimeFormat.split('', dateTimeFormat.lenght); 
var year = dateAsString.splice(0, 4).join(''); 
var month = dateAsString.splice(0, 2).join(''); 
var day = dateAsString.splice(0, 2).join(''); 
var hours = dateAsString.splice(1, 2).join(''); 
var minutes = dateAsString.splice(1, 2).join(''); 
var seconds = dateAsString.splice(1, 2).join(''); 
var date = day + '.' + month + '.' + year + ' ' + hours + ':' + minutes + ':' + seconds; 
return date; 

Aber wie kann ich konvertieren date zu Datumsformat?

Antwort

1

Nach String in einem bekannten Format umzuwandeln, wird Date::parse() genug sein:

var yourDate = new Date(Date.parse(date)); 

ARBEITS DEMO:

var date = "2016.06.15 10:10:10"; 
 
var yourDate = new Date(Date.parse(date)); 
 
alert(yourDate);

NOTE: Ihr Format ist ein bisschen komisch, aber vielleicht analysieren wird es so lange akzeptieren, wie es viele String-Formaten annehmen, wie:

Date.parse("Aug 9, 1995"); 
Date.parse("Wed, 09 Aug 1995 00:00:00"); 
Date.parse("Wed, 09 Aug 1995 00:00:00 GMT"); 
+1

Ich denke, Parse-Funktion ist übermäßig, Sie können Datum String direkt in neues Datum übergeben. – jQuery00

+0

Danke, aber ich habe ein bisschen verwirrt. Ich muss das Datum in einer Tabelle anzeigen und dann nach Datum sortieren. Ich habe das Skript gemacht, das Sie empfohlen haben, und ich bekomme dieses http://imgur.com/or3bTOa. Ich denke, dass ich das Datum als Zeichenkette lassen muss und schreibe Sortierfunktion, um Jahre, Monate, Daten, usw. getrennt zu vergleichen? – kipris

+1

IMHO ist es besser, ein Array von 'Dates' zu sortieren. Überprüfen Sie [diese Antwort] (http://stackoverflow.com/a/19430819/3850595) und [diese Dokumentation] (http://www.w3schools.com/jsref/jsref_sort.asp) –

1

Ich denke, das ist ein einfacher Weg, dies zu tun =). es helfen, hoffen

<script> 
     dateTimeFormat = '20161506T112130'; 
     str = dateTimeFormat.split(""); 
     date = str[0] + str[1] + str[2] + str[3] + '.' + str[4] + str[5] + '.' + str[6] + str[7] + ' ' + str[9] + str[10] + ':' + str[11] + str[12] + ':' + str[13] + str[14]; 
    console.log(date); 
    </script> 
+0

dies tatsächlich verbessert Code der Frage, aber es gibt keine Antwort ... –

+0

i habe nicht gesehen "Aber wie kann ich das Datum in das Datumsformat umwandeln?", das lässt mich denken, dass sein Code nicht läuft und ich dies für ihn kodiere. Ich wollte ihn nicht lächerlich machen. –

+0

Sie konvertieren nicht zu "Date", wie OP verlangt, Sie transformieren nur 'String' Format –