Functie om tijdstempel om te zetten naar menselijke datum in javascript

Hoe converteer ik deze tijdstempel 1382086394000naar 2013-10-18 08:53:14met een functie in javascript? Momenteel heb ik deze functie:

function cleanDate(d) {return new Date(+d.replace(/\/Date\((\d+)\)\//, '$1'));}

Antwoord 1, autoriteit 100%

De waarde 1382086394000is waarschijnlijk een tijdwaarde, het aantal milliseconden sinds 1970-01-01T00:00:00Z. U kunt het gebruiken om een ​​ECMAScript Date-object te maken met behulp van de Date-constructor:

var d = new Date(1382086394000);

Hoe je dat omzet in iets leesbaars, is aan jou. Gewoon naar output sturen, zou de interne (en volledig implementatie-afhankelijke)toStringmethode* moeten aanroepen die gewoonlijk de equivalente systeemtijd in een voor mensen leesbare formulier, bijv.

Fri Oct 18 2013 18:53:14 GMT+1000 (EST) 

In ES5 zijn er enkele andere ingebouwde opmaakopties:

en ga zo maar door. Merk op dat de meeste implementatie-afhankelijk zijn en in verschillende browsers anders zullen zijn. Als u in alle browsers hetzelfde formaat wilt, moet u de datum zelf opmaken, bijvoorbeeld:

alert(d.getDate() + '/' + (d.getMonth()+1) + '/' + d.getFullYear());

* Het formaat van Date.prototype.toStringis gestandaardiseerd in ECMAScript 2018. Het kan even duren voordat het alomtegenwoordig is in alle implementaties, maar de meer gebruikelijke browsers ondersteunen het nu in ieder geval.


Antwoord 2, autoriteit 24%

Dit werkt prima. Ingecheckt in chromebrowser:

var theDate = new Date(timeStamp_value * 1000);
dateString = theDate.toGMTString();
alert(dateString );

Antwoord 3, autoriteit 20%

waarom niet gewoon

new Date (timestamp);

Een datum is een datum, de opmaak ervan is een andere zaak.


Antwoord 4, autoriteit 15%

Moment.jskan Unix-tijdstempels converteren naar elk aangepast formaat

In dit geval: var time = moment(1382086394000).format("DD-MM-YYYY h:mm:ss");

drukt 18-10-2013 11:53:14af;

Hier is een plunkerdie dit aantoont.


Antwoord 5, autoriteit 8%

Hier zijn de eenvoudige manieren om verwarringen in de datumnotatie op te lossen:

voor huidige datum:

var current_date=new Date();

om het tijdstempel van de huidige datum te krijgen:

var timestamp=new Date().getTime();

om een ​​bepaalde datum om te zetten in een tijdstempel:

var timestamp_formation=new Date('mm/dd/yyyy').getTime();

om een ​​tijdstempel om te zetten in een datum:

var timestamp=new Date('02/10/2016').getTime();
  var todate=nieuwe datum(tijdstempel).getDate();
  var tomonth=new Date(timestamp).getMonth()+1; 

Other episodes