JavaScript päivämäärät

Esimerkki

var d = new Date();

Kokeile itse

JavaScript päivämääräulostulo

Oletuksena JavaScript käyttää selaimen aikavyöhykettä ja näyttää päivämäärän täydellisenä tekstillä:

Tue Apr 02 2019 09:01:19 GMT+0800 (Kiinan aikavyöhyke)

Myöhemmin opit tässä kurssissa lisää päivämäärän näyttämisestä.

Luo Date-objekti

Date-objekti luodaan uudella Date() Konstruktori luo.

On 4 tapaa luoda uusi päivämääräobjekti:

  • new Date()
  • new Date(year, month, day, hours, minutes, seconds, milliseconds)
  • new Date(milliseconds)
  • new Date(date string)

new Date()

new Date() Luo uusi päivämääräobjekti nykyisellä päivämäärällä ja ajalla:

Esimerkki

var d = new Date();

Kokeile itse

Päivämääräobjekti on staattinen. Tietokoneen aika kumartuu, mutta päivämääräobjekti ei.

new Date(year, month, ...)

new Date(year, month, ...) Luo uusi päivämääräobjekti annetulla päivämäärällä ja ajalla.

7 numeroa määrittävät vuoden, kuukauden, päivän, tunnin, minuutin, sekunnin ja millisekunnin (tässä järjestyksessä):

Esimerkki

var d = new Date(2018, 11, 24, 10, 33, 30, 0);

Kokeile itse

KommenttiJavaScript laskee kuukaudet 0:sta 11:een.

Tammikuu on 0. Joulukuu on 11.

6 numerot määrittävät vuoden, kuukauden, päivän, tunnin, minuutin ja sekunnin:

Esimerkki

var d = new Date(2018, 11, 24, 10, 33, 30);

Kokeile itse

5 numerot määrittävät vuoden, kuukauden, päivän, tunnin ja minuutin:

Esimerkki

var d = new Date(2018, 11, 24, 10, 33);

Kokeile itse

4 numerot määrittävät vuoden, kuukauden, päivän ja tunnin:

Esimerkki

var d = new Date(2018, 11, 24, 10);

Kokeile itse

Kolme numeroa määrittää vuoden, kuukauden ja päivän:

Esimerkki

var d = new Date(2018, 11, 24);

Kokeile itse

Kaksi numeroa määrittää vuoden ja kuukauden:

Esimerkki

var d = new Date(2018, 11);

Kokeile itse

Kuukautta ei voida jättää pois. Jos annetaan vain yksi parametri, sitä käytetään millisekuntina.

Esimerkki

var d = new Date(2018);

Kokeile itse

Edellinen vuosisata

Yhden ja kahden numeron vuodet tulkitaan 19xx-vuodeksi:

Esimerkki

var d = new Date(99, 11, 24);

Kokeile itse

Esimerkki

var d = new Date(9, 11, 24);

Kokeile itse

new Date(dateString)

new Date(dateString) Luo uusi päivämääräobjekti päivämäärämerkkijonosta:

Esimerkki

var d = new Date("October 13, 2014 11:13:00");

Kokeile itse

Päivämäärämerkkijonot esitellään seuraavassa luvussa.

JavaScript tallentaa päivämäärän millisekunteina

JavaScript tallentaa päivämäärän 1970, marraskuun 1. päivän 00:00:00 UTC (aikavyöhyke) päivämäärinä.

Nollatunti on vuosi 1970, marraskuu 1. päivä 00:00:00 UTC:ssä.

Nykyinen aika on: 1554166879383 millisekuntia vuoden 1970, marraskuun 1. päivän jälkeen.

new Date(milliseconds)

new Date(milliseconds) Luo uusi päivämääräobjekti, joka lisää nollaa ja millisekunteja:

Esimerkki

var d = new Date(0);

Kokeile itse

Vuosi 1970, marraskuu 1. päivä lisättynä 100 000 000 000 millisekunnalla noin vuonna 1973, maaliskuu 3.:

Esimerkki

var d = new Date(100000000000);

Kokeile itse

Vuosi 1970, marraskuu 1. päivä vähennettynä 100 000 000 000 millisekunnalla noin vuonna 1966, lokakuu 31.:

Esimerkki

var d = new Date(-100000000000);

Kokeile itse

Esimerkki

var d = new Date(86400000);

Kokeile itse

Päivä (24 tuntia) on 86 400 000 millisekuntia.

Päivämäärämenetelmiä

Kun luodaan Date-objekti, voidaan käyttää moniaMenetelmätToimi sen kanssa.

Päivämäärämenetelmät mahdollistavat paikallisen ajan tai UTC (yleisen tai GMT) ajan käytön päivämääräobjektin vuoden, kuukauden, päivän, tunnin, minuutin, sekunnin ja millisekunnin asettamiseen ja hakemiseen.

Päivämäärämenetelmät ja aikavyöhyke esitellään seuraavassa luvussa.

Näytä päivämäärä

JavaScript (oletuksena) tulostaa päivämäärän täydellisenä tekstillä:

Tor Mar 25 2015 08:00:00 GMT+0800 (Kiinan aikavyöhyke)

HTML:ssä päivämäärätietueen näyttämisessä käytetään toString()-metodia automaattisesti muuntamaan merkkijonoksi.

Esimerkki

d = new Date();
document.getElementById("demo").innerHTML = d;

Kokeile itse

Tämä on samanarvoinen:

d = new Date();
document.getElementById("demo").innerHTML = d.toString();

Kokeile itse

toUTCString() Metodi muuntaa päivämäärän UTC-merkkijonoksi (yksi päivämäärän näyttöstandardi).

Esimerkki

var d = new Date();
document.getElementById("demo").innerHTML = d.toUTCString();

Kokeile itse

toDateString() Metodi muuntaa päivämäärän helpommin luettavaksi muodoksi:

Esimerkki

var d = new Date();
document.getElementById("demo").innerHTML = d.toDateString();

Kokeile itse