1020 Stimmen

Abrufen der Zeitzone des Clients (und des Offsets) in JavaScript

Wie kann ich die Zeitzoneninformationen des Besuchers erfassen?

Ich brauche beides:

  1. die Zeitzone (z. B. Europa/London)
  2. und die Abweichung von UTC oder GMT (z. B. UTC+01)

9voto

Saurabh Talreja Punkte 305

Versuchen Sie dies:

new Date().toLocaleString("en-US",Intl.DateTimeFormat().resolvedOptions().timeZone)

Damit wird im Browser Ihres Kunden nach timeZone gesucht.

7voto

kolypto Punkte 26888

Con moment.js :

moment().format('zz');

6voto

Fizer Khan Punkte 79079

Con momentjs finden Sie die aktuelle Zeitzone als

console.log(moment().utcOffset()); // (-240, -120, -60, 0, 60, 120, 240, etc.)

<script src="https://cdn.jsdelivr.net/momentjs/2.13.0/moment.min.js"></script>

Con dayjs finden Sie die aktuelle Zeitzone als

console.log(dayjs().utcOffset()); // (-240, -120, -60, 0, 60, 120, 240, etc.)

<script src="https://unpkg.com/dayjs@1.8.10/dayjs.min.js"></script>

Beide APIs geben den utc-Offset in Minuten zurück.

5voto

Abrar Jahin Punkte 13034

Zeitzone in Stunden-

var offset = new Date().getTimezoneOffset();
if(offset<0)
    console.log( "Your timezone is- GMT+" + (offset/-60));
else
    console.log( "Your timezone is- GMT-" + offset/60);

Wenn Sie genau sein wollen, wie Sie in Ihrem Kommentar erwähnt haben, dann sollten Sie Folgendes versuchen

var offset = new Date().getTimezoneOffset();

if(offset<0)
{
    var extraZero = "";
    if(-offset%60<10)
      extraZero="0";

    console.log( "Your timezone is- GMT+" + Math.ceil(offset/-60)+":"+extraZero+(-offset%60));
}
else
{
    var extraZero = "";
    if(offset%60<10)
      extraZero="0";

    console.log( "Your timezone is- GMT-" + Math.floor(offset/60)+":"+extraZero+(offset%60));
}

4voto

Dharmendra Shah Punkte 103

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat

Der Konstruktor Intl.DateTimeFormat() erzeugt Intl.DateTimeFormat-Objekte, die eine sprachabhängige Datums- und Zeitformatierung ermöglichen.

Intl.DateTimeFormat().resolvedOptions().timeZone // Asia/Kolkata

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X