Näytä päivämäärä ja aika Miten se oikein tehdään
Me törmänmme niihin päivämääriin ja aikaan… hyvin, joka päivä. Kun kyseessä on Web, voit paikantaa ne mobiilisovelluksissasi, sähköposteissasi, viestintäsovelluksissa ja monissa muissa paikoissa. Kuitenkin huolimatta siitä, että päivä ja aika on joka päivä ja kaikkialla, meidän on vielä hyväksyttävä sen yleismaailmallinen muoto.
Jos esimerkiksi kirjoitan 10/05/2015, et voi koskaan olla varma, onko "10" kuukausi tai päivämäärä, ellei kerron teille, mistä olen. Joskus muoto muuttuu, toisinaan kieli.
On tärkeää, että web-kehittäjinä kiinnitämme huomiota siihen päivämäärään ja aikaan, jota käsittelemme projekteissamme, jotta voimme huolehtia niistä eri maantieteellisille asukkaille ilman ristiriitoja. Tässä viestissä keskustelemme mitä välttää ja mitä omaksua kun aika tulee näkyviin.
Kansainvälistyminen
Oletetaan, että emme halua muuntaa ja näyttää eri päivämäärä- ja aikaformaatteja eri katsojille eri puolilla maailmaa, mitä voimme tehdä? Valitsemme yhden globaalin muodon ja pidämme sitä kiinni. Tässä on joitakin standardeja. Ennen kuin pääsemme siihen, minun on ilmoitettava, että W3C suosittelee käyttämään ISO 8601 -päivämäärää UTC-aikavyöhykkeellä.
ISO 8601
ISO 8601 kuvaa kansainvälisesti hyväksyttyä tapaa edustaa päivämääriä ja kellonaikoja numeroiden avulla.
Täydellisen päivämäärän muoto on; VVVV-KK-PP
, esimerkiksi: 07.28.2015
VVVV = 4-numeroinen vuosi
MM = 2-numeroinen kuukausi (01 = tammikuu jne.)
DD = 2-numeroinen päivä (01-31)
Täydellinen päivämääräaika;VVVV-KK-PPTtt: mm: ss.s
, esimerkiksi: 2015-07-28T21: 15: 18.45
T = Päivämäärän ja kellonajan erottaminen standardin ISO 8601 mukaisesti
mm = 2-numeroinen minuutti (00–59)
ss = 2-numeroinen sekunti (00–59)
s = toisen, yhden tai useamman numeron desimaalifraktio
Huomaa, että koska edellä olevassa esimerkissä ei ole mainittu aikavyöhykettä, on oletettava, että aika on paikallisella aikavyöhykkeellä. Jos olet päättänyt käyttää UTC-aikavyöhykettä, lisää vain Z arvoon, joka tarkoittaa UTC: tä
Esimerkiksi: 2015-07-28T21: 15: 18.45Z
Mutta jos haluat näyttää paikallisen ajan, voit lisätä a aikavyöhykkeen siirtymä UTC: lle muodoissa olevaan arvoon +hh: mm
tai -hh: mm
tarvittaessa.
Esimerkiksi: Oletetaan 2015-07-28T21: 15: 18.45
on EST (Eastern Standard Time)-aikavyöhykkeellä, joka on 5 tuntia UTC-aikavyöhykkeen takana.
Edustamaan sitä UTC-offsetillä 2015-07-28T21: 15: 18,45-05: 00
joka vastaa UTC-aikaa 2015-07-29T02: 15: 18.45Z
.
Uudelleen Z on liitetty siten, että näytetty päivämäärä-aika on UTC-aika.
UTC vs. GMT
Molemmat ovat samat, mutta erilaiset. Tähän mennessä olet todennäköisesti törmännyt GMT: hen ainakin kerran; kun asetat päivämäärän kellonajan matkapuhelimeen tai tietokoneeseen. Se on maailman suosituin aikavyöhyke, koska se on ollut pidempi kuin UTC.
Jotkut voivat sanoa, että molemmat ovat samat, mutta ne eivät ole, UTC on GMT: n seuraaja ja sitä ylläpitää Kansainvälinen televiestintäliitto. On suositeltavaa viitata ajankohtaan, joka perustuu UTC: hen eikä GMT: hen.
Käytä kuukausien nimeä
ISO-standardi käytti vain päivämäärän esityksen numeroita kielten ristiriitojen välttämiseksi. Mutta jos verkkosovelluksesi sisältö tulee olemaan englanniksi, kannattaa harkita kuukausien kirjoittamista englanniksi eikä numeroiksi.
Sijasta 07.28.2015
, 28. heinäkuuta 2015
on helpompi ymmärtää monille ja vähemmän sekava.
lokalisointi
On aikoja, jolloin haluamme olla hyvin spesifisiä palveluidemme kanssa ja haluamme edustaa päivämäärää ja kellonaikaa paikallisilla aikavyöhykkeillä ja kielillä. Web-kehittäjille on tarjolla monia kirjastoja ja sovellusliittymiä, jotka voivat käyttää ja näyttää päivämäärät ja kellonajat pääsyn alueella.
Voit saada selaimen oletussijainnin joko tulkitsemalla Accept-Language
pyynnön otsikon tai navigator.language tai navigator.browserLanguage
JavaScript-objekti, mutta paras tapa on anna käyttäjän valita sovelluspaikka koska entiset tavat eivät ole kovin luotettavia.
Kun olet löytänyt paikan, voit muotoilla päivämäärän sen mukaan, esimerkiksi käyttämällä Kansainvälistymisen API, voit alustaa päivämäärän käyttämällä toLocaleDateString
esimerkiksi JavaScriptissä, myDate.toLocaleDateString (ko-KR)
palauttaa muotoillun päivämäärän korealaisten kielten asukkaiden Koreassa käyttämässä muodossa.
Kesäaika (DST)
Joissakin maissa kesäaika siirtyy lähettämällä kellot tunnilla kesällä hyödyntääkseen ylimääräistä auringonvaloa. Ole tietoinen DST: stä, jotta voit pysyä palvelusi paikallisten aikojen kanssa.
Ei kaksi numeroa
Kun käytät lokalisoinnin päivämäärää ja aikaa, älä käytä vuoden kaksinumeroista muotoa missään vaiheessa. Olemme jo 21. vuosisadalla. Käyttämällä vuosia 64
, 99
jne. ovat tulevaisuudessa hankalia. Jos sinulla on jo kaksinumeroinen järjestelmä, harkitse sen muuttamista.
Leap Year ja muut kalenterit
Lopettakaamme tämä viesti, jossa on muutamia muistettavia asioita, joita on muistettava, kun käsitellään päivämääriä. Jos et käytä päivämääriin mitään kirjastoa tai API: ta ja haluat käsitellä niitä itse (mikä on ei kuitenkin suositeltavaa), älä unohda näyttää 29. helmikuuta harppuvuosien panoksissa.
Lisäksi on syytä huomata, että Gregoriaaninen kalenteri ei ole ainoa käytettävissä oleva kalenterimuoto ympäri maailmaa. Paikallisia kalentereja on vain vähän, erityisesti juhlallisuuksia.
Viitteet
- Kansainvälinen televiestintäliitto: koordinoidun maailmanlaajuisen ajan (UTC) tutkimuksen tila ITU-R: ssä
- ISO: ISO 8601 - Päivämäärä ja aika
- Wikipedia: koordinoidun maailmanajan
- Wikipedia: kesäaika
- Wikipedia: Greenwichin aika
- W3C Huomautus: Päivämäärän ja kellonajan muodot
- W3C-vinkkejä: Käytä kansainvälistä päivämäärämuotoa (ISO)