2016-08-19 5 views
0

Gibt es Unterschiede in der aktuellen Zeit in Millisekunden, die mit JavaScript-Code in der Maschine in Timezone1 und Java-Code in der Maschine in Timezone2 erreicht wurden?Unterschied zwischen zwei verschiedenen Zeitzonen in Browser und Java Server

Hier ist mein Beispielcode für diesen Anwendungsfall.

new Date().getTime(); 

mit dem obigen Code, erhalte ich die aktuelle Zeit in Millisekunden. Meine Maschine ist in IST

In der gleichen Zeit führt mein Freund den folgenden Code in seiner Maschine, die in PDT ist.

public class Time 
{ 
public static void main(String args[]) 
{ 
    System.out.println(System.currentTimeMillis()); 
} 
} 

Wenn wir beide führt den Code zur gleichen Zeit. Wir bekommen einen Unterschied von etwa 40 Sekunden.

Fehle ich etwas in diesem Verständnis?

+0

Sie können Ihre lokale Uhr auf alles einstellen, so dass Sie niemals auf allen Computern die gleiche Zeit annehmen können, unabhängig von den Zeitzonen (verwenden Sie immer UTC und sorgen Sie sich nicht um Zeitzonen). Warum willst du das machen? – Archer

+0

Könnte es sein, dass das System in Ihrem Computer synchronisiert und der Computer Ihres Freundes nicht synchron ist? Wenn Sie Ihre Systemuhren nicht von einer zentralen Stelle aus (oder untereinander) synchronisieren, kommt es zu unvermeidlichen Abweichungen zwischen Ihren Uhren. – t6nn

Antwort

0

Ja, es wird ein Unterschied unter normalen Umständen, das heißt, wenn jeder Takt des Systems auf die richtige Zeitzone eingestellt ist, und auch, wenn der Client-Code ist konsistent:

  • Ortszeit Verwendet, nicht UTC.
  • verwendet die Standard-Konstruktor Date-Objekt, das das aktuelle Datum zurückgibt/Zeit

Offensichtlich ist der wahre Unterschied ungenau sein wird, wenn das Datum nicht im selben Moment auf beiden Rechnern abgerufen werden.

Verwandte Themen