υπολογιστή

* Γνώση Υπολογιστών >> υπολογιστή >> Διαδίκτυο

Πώς να μετατρέψετε τη Javascript UTC Ημερομηνία στην Ανατολική Time

Οι άνθρωποι εκφράζουν συχνά ζώνες ώρας από όλο τον κόσμο ως θετικές ή αρνητικές αντισταθμίσεις από το Coordinated Universal Time ή UTC. Το UTC είναι το χρονικό πρότυπο που βασίζεται στον Διεθνή Ατομικό Χρόνο και στην περιστασιακή χρήση θεωρείται ισοδύναμο με τη Γκρήνουιτς Μέση Ώρα (GMT). Χρησιμοποιώντας τη γλώσσα δέσμης ενεργειών JavaScript, μπορείτε εύκολα να μετατρέψετε το χρόνο UTC σε ώρα ανατολής.

Βήμα 1

Εισαγωγή ενός αντικειμένου δεδομένων JavaScript καλώντας τον κατασκευαστή της ημερομηνίας (), μεταφέροντάς τον ως μοναδική παράμετρο τη μέθοδο UTC () (π.χ., για τα μεσάνυχτα της 1 Ιανουαρίου 2000 ώρα UTC, "var fooDay = νέα ημερομηνία (Date.UTC (2000,0,1,0,0,0,0))"). Το UTC () είναι μια στατική μέθοδος που επιστρέφει τον αριθμό των χιλιοστών του δευτερολέπτου που έχουν περάσει από τα μεσάνυχτα της 1ης Ιανουαρίου 1970 ώρα UTC. Η σύνταξή της είναι Date.UTC (έτος, μήνα, ημέρα, ώρες, λεπτά, δευτερόλεπτα, χιλιοστά του δευτερολέπτου), όπου όλα τα επιχειρήματα εκφράζονται ως ψηφία. Τα πρώτα τρία επιχειρήματα απαιτούνται ενώ τα υπόλοιπα επιχειρήματα είναι προαιρετικά. Αυτό το αντικείμενο Ημερομηνία αντιπροσωπεύει την ώρα που θέλετε να μετατρέψετε, εκφρασμένη σε τοπική ώρα σας.

Βήμα 2

Υπολογίστε τη διαφορά ώρας σε χιλιοστά του δευτερολέπτου μεταξύ της ώρας UTC και της τοπικής σας ώρας και αποθηκεύστε το αποτέλεσμα σε μια μεταβλητή. Για να υπολογίσετε την τοπική μετατόπισή σας, καλέστε τη μέθοδο getTimezoneOffset () του αντικειμένου σας και πολλαπλασιάστε την τιμή επιστροφής της κατά 60.000 (π.χ. "var localOffset = fooDay.getTimezoneOffset () * 60000"). Πολλαπλασιάζετε με 60.000 για να μετατρέψετε τα λεπτά σε χιλιοστά του δευτερολέπτου (1.000 χιλιοστά του δευτερολέπτου σε ένα δευτερόλεπτο, 60 δευτερόλεπτα σε ένα λεπτό = 60.000 χιλιοστά του δευτερολέπτου).

Βήμα 3

Αποκτήστε την τιμή UTC σε χιλιοστά του δευτερολέπτου σας Μέθοδος getTime () και προσθήκη της τιμής επιστροφής στην τοπική αντιστάθμιση (π.χ. "var fooUTC = fooDay.getTime () + localOffset").

Βήμα 4

Δημιουργήστε μια σταθερά για να αναπαριστάτε την Ανατολική Χρονική Ζώνη offset σε χιλιοστά του δευτερολέπτου (π.χ. "const EAST = 3600000 * -5"). Πολλαπλασιάζετε κατά 3.600.000 για να μετατρέψετε ώρες σε χιλιοστά του δευτερολέπτου (1.000 χιλιοστά του δευτερολέπτου σε ένα δευτερόλεπτο * 60 δευτερόλεπτα σε ένα λεπτό * 60 λεπτά σε μία ώρα = 3.600.000 χιλιοστά του δευτερολέπτου) και πολλαπλασιάζετε κατά -5 επειδή η Ανατολική ώρα είναι πέντε ώρες πίσω από το χρόνο UTC. > Εισαγωγή ενός άλλου αντικειμένου ημερομηνίας καλώντας τον κατασκευαστή της ημερομηνίας (), διαβιβάζοντάς του ως μοναδική παράμετρο το άθροισμα της τιμής UTC του πρώτου αντικειμένου ημερομηνίας και της σταθεράς αντιστάθμισης της ζώνης ώρας της Ανατολής (π.χ. "var barDay = new Date (fooUTC + ΑΝΑΤΟΛΗ)"). Αυτό το αντικείμενο ημερομηνίας αντιπροσωπεύει την αρχική σας ημερομηνία UTC, που τώρα μετατράπηκε σε Ανατολική ώρα.

Συμβουλή

Στην JavaScript, η αριθμητική αναπαράσταση για μήνες κυμαίνεται από 0 έως 11 αντί από 1 έως 12. Έτσι, για παράδειγμα, Ιανουάριος θα είναι "0," Φεβρουάριος "1", Μάρτιος "2," και ούτω καθεξής.

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα