Gå til innhold

Dato JavaScript viser feil dato


Anbefalte innlegg

Jeg fikk tidligere hjelp her inne til å utvide mitt dato javascript til å også vise ukenummer, og det fungerte godt en stund. Men nå viser den 10. november 2009, uke 48. Ja, jeg har riktig dato på pcen min, har sett dette på flere pcer også, så regner med at dere vil få samme feil. her er linkene

 

Børres Startside

Dato scriptet

 

kan dere se noen feil der? Jeg må innrømme at jeg er utrolig dårlig på JavaScript, så jeg ser lite sammenheng generelt her, hehe. Setter pris på all konstruktiv tilbakemelding :)

 

EDIT: Den viser forøvrig riktig ukenummer....:?

Endret av HulkHaugen
Lenke til kommentar
Videoannonse
Annonse
  • 1 måned senere...
hmm, nok et lite dilemma her; nå viser den uke 0, og det har den gjort de siste dagene (I chrome, regner med at ie og firefox gjør samme feil). Noen som har en forklaring på det?

 

Teknisk sett er første, andre og tredje januar uke 53 i år 2009(!). Dette er et litt ekstraordinært fenomen jeg ikke husker helt hvorfor forekommer i farta, men se kalender.no f.eks. dersom du er i tvil om dette stemmer. :)

Endret av funkyboy
Lenke til kommentar
hmm, nok et lite dilemma her; nå viser den uke 0, og det har den gjort de siste dagene (I chrome, regner med at ie og firefox gjør samme feil). Noen som har en forklaring på det?

 

Teknisk sett er første, andre og tredje januar uke 53 i år 2009(!). Dette er et litt ekstraordinært fenomen jeg ikke husker helt hvorfor forekommer i farta, men se kalender.no f.eks. dersom du er i tvil om dette stemmer. :)

 

Årsaken til dette er veldig enkel, vi starter ikke en ny uke på en fredag, da den første januar var en fredag i år, så må selvsagt den fredagen tilhøre uken vi allerede var inne i, nemlig uke 53. Til sammenlikning inneholder 2010, bare 52 uker. Avhengig av hvor mange dager man har i "rest" ved årsskiftet så får man altså 52 eller 53 uker.

 

Regnestykket ser slik ut: 365/7= 52,1428...

Vi forsøker å kompansere for andre forhold ved skuddår, 366/7= 52,2857...

 

Det er altså ikke hele uker ved slutten og begynnelsen av året, noe som til slutt hoper seg opp og gir oss en ekstra uke i året. I år så inneholdt den 53 uken fredag, lørdag og søndag - henholdsvis 1,2,3 januar. Til sammenlikning så vil vi i 2012 se den andre siden av dette fenomenet, nemlig at uke 1 starter i desember. :wee:

Endret av NikkaYoichi
Lenke til kommentar

J, jeg er klar over "fenomenet", huske sist gang jeg hørte om 53. uke og tenkte; humh...

 

Men er det komplisert å endre javascriptet til å ta med ukenummeret i beregningen? Jeg går utifra at den viser riktig frem til neste gang vi får en 53. uke, men rett skal være rett... :)

Lenke til kommentar

Nå satt jeg meg ikke for mye inn i scriptet ditt, men går du ut ifra at scriptet treffer riktig uke i alle andre tilfeller enn i dette, kan du forsåvidt si at hvis variabel er lik null, skal den ha verdi 53 isteden. Erstatt derfor denne linjen:

 

return weeknum;

 

med

 

if (weeknum == 0) weeknum = 53;
return weeknum;

Lenke til kommentar
Hmm. Artig! Den første uken starter med andre ord alltid med en mandag. :)

 

Alle uker starter med en mandag. :)

 

Mener forsåvidt jeg har hørt om uker som starter søndag og, men det er trolig en off-topic. :)

Endret av funkyboy
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...