---
title: "Tid i flera tidzoner?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/17784-tid-i-flera-tidzoner"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "mattiasnordin"
published: "2001-05-23T12:06:00.000Z"
updated: "2001-05-28T12:45:00.000Z"
replies: 8
views: 321
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/17784-tid-i-flera-tidzoner"
---

# Tid i flera tidzoner?

## #1 — mattiasnordin, 2001-05-23T12:06Z

Går det med javascript att visa tid i olika tidzoner? Jag vet hur man visar den lokala klockans tid i ett inputfält men går det att visa den nuvarande tiden i tex New York. Rätt tid måste visas oberoende om du surfar från en dator i USA eller i sverige.

Permalänk: https://www.webforum.nu/p/17784

## #2 — jepsO, 2001-05-23T12:44Z

Rätta mig om jag har fel, men läser inte JavaScript av Windows-klockan när den visar aktuell tid?

Om scriptet ska bli helt idiotsäkert är serverbaserad programmering att föredra.

Permalänk: https://www.webforum.nu/p/333233

## #3 — Johnsen, 2001-05-23T15:22Z

Som sagt så hämtas tiden från operativsystemet, men man vet alltid vad GMT är.

Så om du vet när olika ställen byter till sommartid och vad skillnaden är i tid mot GMT, går det att räkna ut.

Exempel: Washington DC ligger 5 timmar efter GMT och har sommartid mellan 1 april, kl: 02:00 och 28 oktober, kl: 03:00 (vilket ger 4 timmar efter GMT).

Kolla på nedanstående: 

```
<script>

var nowYear=new Date().getFullYear();
var corrSE= ((new Date().getTime()-new Date("October 28, "+nowYear+" 03:00:00").getTime())<0 && (new Date("March 25, "+nowYear+" 02:00:00").getTime()-new Date().getTime())<0)? 2 : 1
var corrUS= ((new Date().getTime()-new Date("October 28, "+nowYear+" 02:00:00").getTime())<0 && (new Date("April 1, "+nowYear+" 02:00:00").getTime()-new Date().getTime())<0)? -4 : -5
var corrGB= ((new Date().getTime()-new Date("October 28, "+nowYear+" 03:00:00").getTime())<0 && (new Date("March 25, "+nowYear+" 01:00:00").getTime()-new Date().getTime())<0)? 1 : 0

var now= new Date().toGMTString();
var nowString=now.substring(0,now.length-3)
var GMTdate= new Date(nowString)
var SEdate= new Date(nowString)
var USdate= new Date(nowString)
var GBdate= new Date(nowString)

SEdate.setHours(SEdate.getHours()+corrSE)
USdate.setHours(USdate.getHours()+corrUS)
GBdate.setHours(GBdate.getHours()+corrGB)

document.write("Klockan är (timme) på resp ort:"+"<br>")
document.write("<b>GMT:</b> "+GMTdate.getHours()+"<br>")
document.write("<b>Stockholm:</b> "+SEdate.getHours()+"<br>")
document.write("<b>Washington DC:</b> "+USdate.getHours()+"<br>")
document.write("<b>London:</b> "+GBdate.getHours()+"<br>")

</script>
```

\------------------
\- J-O-H-N-S-E-N -

Permalänk: https://www.webforum.nu/p/333234

## #4 — mattiasnordin, 2001-05-28T08:14Z

Man tackar för den fina lösningen. Jag läste mig till att det skulle gå men fick inte till syntaxen. Jag är självlärd på javascript så ibland blir det fel.

\<kod\>
	var corrSE= ((new Date().getTime()-new Date("October 28, "+nowYear+" 03:00:00").getTime())\<0 && (new Date("March 25, "+nowYear+" 02:00:00").getTime()-new Date().getTime())\<0)? 2 : 1
	var corrUS= ((new Date().getTime()-new Date("October 28, "+nowYear+" 02:00:00").getTime())\<0 && (new Date("April 1, "+nowYear+" 02:00:00").getTime()-new Date().getTime())\<0)? -4 : -5
	var corrGB= ((new Date().getTime()-new Date("October 28, "+nowYear+" 03:00:00").getTime())\<0 && (new Date("March 25, "+nowYear+" 01:00:00").getTime()-new Date().getTime())\<0)? 1 : 0
\</kod\>

Jag är inte helt med på vad (x : -1, -5, 0) den sista nollan gör sist i koden? Vad styr du med denna?

Hur som helst tack för att du löste mitt problem. Jag är nästan med i matchen ;-)

Permalänk: https://www.webforum.nu/p/333235

## #5 — Johnsen, 2001-05-28T09:01Z

Nu är jag inte med, var står x : -1, -5, 0 ?

\------------------
\- J-O-H-N-S-E-N -

Permalänk: https://www.webforum.nu/p/333236

## #6 — mattiasnordin, 2001-05-28T11:53Z

Jag var lite otydlig. Hoppas att nedan fungerar bättre...

\[kod\]
var corrUS= ((new Date().getTime()-new Date("October 28, "+nowYear+" 02:00:00").getTime())\<0 && (new Date("April 1, "+nowYear+" 02:00:00").getTime()-new Date().getTime())\<0)? \-4 : -5
\[kod\]

(Jag undrar över sista -5)

Permalänk: https://www.webforum.nu/p/333237

## #7 — mattiasnordin, 2001-05-28T11:56Z

Vad sne jag blir! Varför kan man inte FÖRHANDSGRANSKA innan man klickar posta? Då slipper man alla nybörjarfel som tex jag genererar. -huuuummm-

```
var corrUS= ((new Date().getTime()-new Date("October 28, "+nowYear+" 02:00:00").getTime())<0 && (new Date("April 1, "+nowYear+" 02:00:00").getTime()-new Date().getTime())<0)? -4 : [red]-5[/red]
```

Permalänk: https://www.webforum.nu/p/333238

## #8 — @nders, 2001-05-28T12:25Z

litet tips som är lite ot:

du kan alltid gå in och redigera ett inlägg i efterhand. det gör du genom att klicka på ikonen med pennan precis ovanför aktuellt inlägg. :)

mvh,

Permalänk: https://www.webforum.nu/p/333239

## #9 — Johnsen, 2001-05-28T12:45Z

var variabel= ( värde\<10 )? 2 : 1 är samma sak som att skriva:
var variabel
if( värde\<10 ){variabel= 2}
else{variabel= 1}

Nedanstående betyder alltså:
corrSE är lika med 2, om vi befinner oss mellan 25/4 i år och 28/10 i år. Annars är corrSE lika med 1
(Dvs. förhållandet till GMT om vi har sommartid eller inte).

```
var corrSE= ((new Date().getTime()-new Date("October 28, "+nowYear+" 03:00:00").getTime())<0 && (new Date("March 25, "+nowYear+" 02:00:00").getTime()-new Date().getTime())<0)? 2 : 1
```

\------------------
\- J-O-H-N-S-E-N -

Permalänk: https://www.webforum.nu/p/333240

---

Tråden på webben: https://www.webforum.nu/amne/javascript/17784-tid-i-flera-tidzoner
