Wie konvertiere ich diesen Zeitstempel 1382086394000
in 2013-10-18 08:53:14
eine Funktion in Javascript? Derzeit habe ich diese Funktion:
function cleanDate(d) {return new Date(+d.replace(/\/Date\((\d+)\)\//, '$1'));}
Wie konvertiere ich diesen Zeitstempel 1382086394000
in 2013-10-18 08:53:14
eine Funktion in Javascript? Derzeit habe ich diese Funktion:
function cleanDate(d) {return new Date(+d.replace(/\/Date\((\d+)\)\//, '$1'));}
Antworten:
Der Wert 1382086394000 ist wahrscheinlich ein Zeitwert, dh die Anzahl der Millisekunden seit 1970-01-01T00: 00: 00Z. Sie können damit ein ECMAScript-Datumsobjekt mit dem Datumskonstruktor erstellen :
var d = new Date(1382086394000);
Wie Sie das in etwas Lesbares umwandeln, liegt bei Ihnen. Durch einfaches Senden an die Ausgabe sollte die interne (und vollständig implementierungsabhängige) toString- Methode * aufgerufen werden, die normalerweise die entsprechende Systemzeit in einer für Menschen lesbaren Form druckt , z
Fri Oct 18 2013 18:53:14 GMT+1000 (EST)
In ES5 gibt es einige andere integrierte Formatierungsoptionen:
und so weiter. Beachten Sie, dass die meisten von der Implementierung abhängig sind und in verschiedenen Browsern unterschiedlich sind. Wenn Sie in allen Browsern dasselbe Format wünschen, müssen Sie das Datum selbst formatieren, z.
alert(d.getDate() + '/' + (d.getMonth()+1) + '/' + d.getFullYear());
* Das Format von Date.prototype.toString wurde in ECMAScript 2018 standardisiert . Es kann eine Weile dauern, bis es in allen Implementierungen allgegenwärtig ist, aber zumindest die gängigeren Browser unterstützen es jetzt.
Das funktioniert gut. Im chrome
Browser eingecheckt :
var theDate = new Date(timeStamp_value * 1000);
dateString = theDate.toGMTString();
alert(dateString );
1000
. Sonst wirst du in den zukünftigen Raum hyperloop !!
warum nicht einfach
new Date (timestamp);
Ein Datum ist ein Datum, die Formatierung ist eine andere Sache.
Moment.js kann Unix-Zeitstempel in jedes benutzerdefinierte Format konvertieren
In diesem Fall : var time = moment(1382086394000).format("DD-MM-YYYY h:mm:ss");
wird drucken 18-10-2013 11:53:14
;
Hier ist ein Plunker , der dies demonstriert.
Hier sind die einfachen Möglichkeiten für jede Verwirrung im Datumsformat:
für aktuelles Datum:
var current_date=new Date();
um den Zeitstempel des aktuellen Datums zu erhalten:
var timestamp=new Date().getTime();
So konvertieren Sie ein bestimmtes Datum in einen Zeitstempel:
var timestamp_formation=new Date('mm/dd/yyyy').getTime();
Zeitstempel in Datum umwandeln:
var timestamp=new Date('02/10/2016').getTime();
var todate=new Date(timestamp).getDate();
var tomonth=new Date(timestamp).getMonth()+1;
var toyear=new Date(timestamp).getFullYear();
var original_date=tomonth+'/'+todate+'/'+toyear;
OUTPUT:
02/10/2016
Wir müssen neue Funktionen mit JavaScript erstellen.
function unixTime(unixtime) {
var u = new Date(unixtime*1000);
return u.getUTCFullYear() +
'-' + ('0' + u.getUTCMonth()).slice(-2) +
'-' + ('0' + u.getUTCDate()).slice(-2) +
' ' + ('0' + u.getUTCHours()).slice(-2) +
':' + ('0' + u.getUTCMinutes()).slice(-2) +
':' + ('0' + u.getUTCSeconds()).slice(-2) +
'.' + (u.getUTCMilliseconds() / 1000).toFixed(3).slice(2, 5)
};
console.log(unixTime(1370001284))
2016-04-30 08:36:26.000
formatDate
ist die Funktion, die Sie aufrufen und das Datum übergeben können, an das Sie formatieren möchten dd/mm/yyyy
var unformatedDate = new Date("2017-08-10 18:30:00");
$("#hello").append(formatDate(unformatedDate));
function formatDate(nowDate) {
return nowDate.getDate() +"/"+ (nowDate.getMonth() + 1) + '/'+ nowDate.getFullYear();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="hello">
</div>
Dies habe ich für die Instagram-API getan. konvertierte den Zeitstempel mit der Datumsmethode durch Multiplikation mit 1000. und fügte dann alle Entitäten einzeln hinzu, wie (Jahr, Monate usw.)
hat den benutzerdefinierten Monatslistennamen erstellt und mit der getMonth()
Methode zugeordnet, die den Index des Monats zurückgibt.
convertStampDate(unixtimestamp){
// Unixtimestamp
// Months array
var months_arr = ['January','February','March','April','May','June','July','August','September','October','November','December'];
// Convert timestamp to milliseconds
var date = new Date(unixtimestamp*1000);
// Year
var year = date.getFullYear();
// Month
var month = months_arr[date.getMonth()];
// Day
var day = date.getDate();
// Hours
var hours = date.getHours();
// Minutes
var minutes = "0" + date.getMinutes();
// Seconds
var seconds = "0" + date.getSeconds();
// Display date time in MM-dd-yyyy h:m:s format
var fulldate = month+' '+day+'-'+year+' '+hours + ':' + minutes.substr(-2) + ':' + seconds.substr(-2);
// filtered fate
var convdataTime = month+' '+day;
return convdataTime;
}
Aufruf mit Stempelargument
convertStampDate('1382086394000')
und das ist es.
Meine ES6-Variante erzeugt einen solchen String 2020-04-05_16:39:45.85725
. Sie können die return-Anweisung jederzeit ändern, um das gewünschte Format zu erhalten:
const getDateStringServ = timestamp => {
const plus0 = num => `0${num.toString()}`.slice(-2)
const d = new Date(timestamp)
const year = d.getFullYear()
const monthTmp = d.getMonth() + 1
const month = plus0(monthTmp)
const date = plus0(d.getDate())
const hour = plus0(d.getHours())
const minute = plus0(d.getMinutes())
const second = plus0(d.getSeconds())
const rest = timestamp.toString().slice(-5)
return `${year}-${month}-${date}_${hour}:${minute}:${second}.${rest}`
}
Berechnung des Datums im Zeitstempel ab dem angegebenen Datum
// So erhalten Sie das Zeitstempeldatum vom normalen Datum : Im Format - 1560105000000
// Das Eingabedatum kann im Format "2019-06-09T18: 30: 00.000Z" vorliegen.
this.calculateDateInTimestamp = function (inputDate) {
var date = new Date(inputDate);
return date.getTime();
}
Ausgabe : 1560018600000