Konvertieren von Millisekunden in ein Datum (jQuery / JavaScript)

Ich bin ein bisschen ein Wanderer, aber ich werde versuchen, das klar zu halten –

Mir ist langweilig, also arbeite ich an einer “Shoutbox”, und ich bin ein wenig verwirrt über eine Sache. Ich möchte die Uhrzeit erhalten, zu der eine Nachricht eingegeben wird, und ich möchte sicherstellen, dass ich die Serverzeit bekomme, oder zumindest sicherstellen, dass ich nicht die Ortszeit des Benutzers erhalte. Ich weiß, dass es egal ist, da dieses Ding von niemandem außer mir benutzt wird, aber ich möchte gründlich sein. Ich habe mich umgesehen und ein paar Dinge getestet, und ich denke, der einzige Weg, dies zu tun, ist, die Millisekunden seit / 1970 zu bekommen, oder was auch immer es ist, denn das wäre für alle gleich.

Ich mache das so:

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

Das gibt eine Zahl wie 1294862756114 .

Gibt es eine Möglichkeit, 1294862756114 in ein lesbareres Datum zu konvertieren, wie DD/MM/YYYY HH:MM:SS ?

Also, im Grunde bin ich auf der Suche nach JavaScript-Entsprechung von PHP- date(); function.

 var time = new Date().getTime(); var date = new Date(time); alert(date.toString()); // Wed Jan 12 2011 12:42:46 GMT-0800 (PST) 

Wenn Sie eine benutzerdefinierte Formatierung für Ihr Datum wünschen, biete ich eine einfache function dafür an:

 var now = new Date; console.log( now.customFormat( "#DD#/#MM#/#YYYY# #hh#:#mm#:#ss#" ) ); 

Hier sind die unterstützten Token:

 token: description: example: #YYYY# 4-digit year 1999 #YY# 2-digit year 99 #MMMM# full month name February #MMM# 3-letter month name Feb #MM# 2-digit month number 02 #M# month number 2 #DDDD# full weekday name Wednesday #DDD# 3-letter weekday name Wed #DD# 2-digit day number 09 #D# day number 9 #th# day ordinal suffix nd #hhhh# 2-digit 24-based hour 17 #hhh# military/24-based hour 17 #hh# 2-digit hour 05 #h# hour 5 #mm# 2-digit minute 07 #m# minute 7 #ss# 2-digit second 09 #s# second 9 #ampm# "am" or "pm" pm #AMPM# "AM" or "PM" PM 

Und hier ist der Code:

 //*** This code is copyright 2002-2016 by Gavin Kistner, !@phrogz.net //*** It is covered under the license viewable at http://phrogz.net/JS/_ReuseLicense.txt Date.prototype.customFormat = function(formatString){ var YYYY,YY,MMMM,MMM,MM,M,DDDD,DDD,DD,D,hhhh,hhh,hh,h,mm,m,ss,s,ampm,AMPM,dMod,th; YY = ((YYYY=this.getFullYear())+"").slice(-2); MM = (M=this.getMonth()+1)<10?('0'+M):M; MMM = (MMMM=["January","February","March","April","May","June","July","August","September","October","November","December"][M-1]).substring(0,3); DD = (D=this.getDate())<10?('0'+D):D; DDD = (DDDD=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][this.getDay()]).substring(0,3); th=(D>=10&&D< =20)?'th':((dMod=D%10)==1)?'st':(dMod==2)?'nd':(dMod==3)?'rd':'th'; formatString = formatString.replace("#YYYY#",YYYY).replace("#YY#",YY).replace("#MMMM#",MMMM).replace("#MMM#",MMM).replace("#MM#",MM).replace("#M#",M).replace("#DDDD#",DDDD).replace("#DDD#",DDD).replace("#DD#",DD).replace("#D#",D).replace("#th#",th); h=(hhh=this.getHours()); if (h==0) h=24; if (h>12) h-=12; hh = h<10?('0'+h):h; hhhh = hhh<10?('0'+hhh):hhh; AMPM=(ampm=hhh<12?'am':'pm').toUpperCase(); mm=(m=this.getMinutes())<10?('0'+m):m; ss=(s=this.getSeconds())<10?('0'+s):s; return formatString.replace("#hhhh#",hhhh).replace("#hhh#",hhh).replace("#hh#",hh).replace("#h#",h).replace("#mm#",mm).replace("#m#",m).replace("#ss#",ss).replace("#s#",s).replace("#ampm#",ampm).replace("#AMPM#",AMPM); }; 

Sie können uns einfach die Datejs- Bibliothek zur Verfügung stellen, um das Datum in Ihr gewünschtes Format zu konvertieren.

Ich habe Testpaare laufen lassen und es funktioniert.

Unten ist ein Ausschnitt, der zeigt, wie Sie das erreichen können:

 var d = new Date(1469433907836); d.toLocaleString(); // expected output: "7/25/2016, 1:35:07 PM" d.toLocaleDateString(); // expected output: "7/25/2016" d.toDateString(); // expected output: "Mon Jul 25 2016" d.toTimeString(); // expected output: "13:35:07 GMT+0530 (India Standard Time)" d.toLocaleTimeString(); // expected output: "1:35:07 PM" 

Im Folgenden finden Sie ein Snippet, mit dem Sie das Datum auf eine gewünschte Ausgabe formatieren können:

 var time = new Date(); var time = time.getTime(); var theyear = time.getFullYear(); var themonth = time.getMonth() + 1; var thetoday = time.getDate(); document.write("The date is: "); document.write(theyear + "/" + themonth + "/" + thetoday); 

Probier diese :

var time = new Date().toJSON();

Versuchen Sie, diesen Code zu verwenden:

var milisegundos = parseInt (data.replace (“/ Date (“, “”) .replace (“) /”, “”));

var newDate = neues Datum (milisegundos). toLocaleDateString (“en-UE”);

Genieß es!

Verwende datejs

new Date (). toString (‘jjjj-MM-dh-mm-ss’);

 /Date(1383066000000)/ function convertDate(data) { var getdate = parseInt(data.replace("/Date(", "").replace(")/", "")); var ConvDate= new Date(getdate); return ConvDate.getDate() + "/" + ConvDate.getMonth() + "/" + ConvDate.getFullYear(); } 

Angenommen, das Datum in Millisekunden ist 1526813885836 , sodass Sie mit diesem Beispielcode auf das Datum als Zeichenfolge zugreifen können:

 console.log(new Date(1526813885836).toString()); 

Zur Übersicht siehe untenstehenden Code:

 const theTime = new Date(1526813885836); console.log(theTime.toString()); 

Versuchen Sie, diesen Code zu verwenden:

 var datetime = 1383066000000; // anything var date = new Date(datetime); var options = { year: 'numeric', month: 'numeric', day: 'numeric', }; var result = date.toLocaleDateString('en', options); // 10/29/2013 

Weitere Informationen finden Sie unter https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString