Vissza a bloghoz

A JavaScript alapjai: Hogyan dolgozzunk a dátummal és az idővel

A JavaScript alapjai: Hogyan dolgozzunk a dátummal és az idővel

Bevezetés

A dátum és az idő nemcsak a mindennapi élet kritikus összetevői, hanem a számítógépes programozásnak is részei. Akár időpontfoglaláshoz, akár naptár megjelenítéséhez van szüksége rájuk, számos oka lehet annak, hogy miért van szüksége dátumra és időre. A dátum- és időfunkciók alkalmazási köre széleskörű és rendkívül sokoldalú. A sokoldalúság abból adódik, hogy az időt és a dátumot a felhasználó alapján konfigurálhatja. Minden különböző földrajzi helyen lévő felhasználó más-más eredményt kap az időzónája alapján. Ezeket a funkciókat olyan weboldalakon használják, amelyek időpontfoglaló felülettel és foglalási rendszerekkel rendelkeznek, mint például az éttermek.

A programozók gyakran használnak JavaScriptet a dátum- és időfunkciók weboldalukhoz való hozzáadásához. Ez azért van, mert a JavaScript már rendelkezik egy beépített funkcióval ezekre a szempontokra. Ebben az útmutatóban részletesebben megvizsgáljuk a Date objektumot. Beszélni fogunk azokról a metódusokról, amelyekkel beállíthatja a weboldalán a dátum és az idő ideális beállításait. Kitérünk arra is, hogyan változtathatja meg a formátumot és még sok másra.

Mi az a Date objektum?

Ahogy az imént említettük, a JavaScript rendelkezik egy beépített funkcióval a dátumhoz és az időhöz. Ezt Date objektumnak nevezik. Ez az objektum lehetővé teszi a dátumhoz és időhöz kapcsolódó adatok módosítását és kezelését. Amikor létrehoz egy példányt a Date számára, egy új objektum jön létre. Ez az objektum a számítógépének az adott pillanatban érvényes dátum- és időbeállításainak felel meg.

Hogy jobban megértse az objektum működését, vegyünk egy példát. Először létrehozunk egy változót. Ezután hozzárendelünk egy adott dátumot. Tegyük fel, hogy a nap szerda, a dátum pedig október 18. a londoni (GMT) időzónában. Tekintse meg ezt a konfigurációt:

A kimenetünk egy dátum karakterláncot mutat. Ez a következő adatokból áll:

A hét napja Hónap Nap Év Óra Perc Másodperc Időzóna
Sze Okt 18 2017 12 41 34 GMT+0000 (UTC)

A JavaScript egy időbélyegen keresztül kapja meg az adatokat. Ez az időbélyeg a Unix-időből származik. Ez egy olyan érték, amely az 1970. január 1-je éjfél óta eltelt ezredmásodpercek számát mutatja. A felhasználó számára a dátum érthető formátumban jelenik meg. Ha meg szeretné kapni ezt az időbélyeget, a getTime() metódust kell használnia, így:

Bár ez az érték zavarónak tűnhet, ugyanazt jelenti, mint a dátum karakterlánc. Ez egyszerűen 2017. október 18.

Mi az az Epoch idő?

A következő elsajátítandó fogalom az epoch idő. Ezt nulla időnek is nevezik. Jobban megértheti, mint a 01 január, 1970 00:00:00 univerzális idő (UTC) karakterláncot és a 0 időbélyeget. A teszteléshez hozzon létre egy új változót. Ezután rendelje hozzá egy új Date példányhoz egy 0 időbélyegen:

Az epoch idő korábban a programozók szabványa volt. Ez az a módszer is, amelyet a JavaScript használ az idő mérésére.

Dátumlétrehozási formátumok a JavaScriptben

Most, hogy már tudjuk, hogyan kell új Date példányt létrehozni karakterlánccal és időbélyeggel, beszélhetünk a különböző formátumokról. Négy formátum létezik, amelyek részletezése a következő:

Javascript Date and Time Formats for date creation

Ez azt jelenti, hogy szükség szerint megadhat konkrét dátumokat és időpontokat. Egyszerűen használhat egy adat karakterláncot vagy időbélyeget is, ahogy azt korábban megbeszéltük. A jobb megértés érdekében megvizsgáljuk, hogyan hozhat létre új Date objektumokat három különböző módon. Feltételezve, hogy a dátumunk és időnk 1776. július 4., délután 12:30 GMT:

Amint láthatja, mindhárom módszer ugyanazt a dátumot adja eredményül. Az egyik különbség az, hogy ha az Epoch idő előtti időpontot használ, az időbélyeg negatív számmal fog megjelenni. Ezenkívül a másodpercek és ezredmásodpercek alapértelmezés szerint 0 értékűek a dátum és idő módszerben. Ha elfelejt beírni egy számot, az is alapértelmezés szerint 0-ra lesz állítva.

Egy másik megtévesztő dolog, hogy a júliust a 6-os szám képviseli a 7-es helyett. Ez azért van, mert a számozás 0-val kezdődik. Tartsa szem előtt ezeket a dolgokat a példányok létrehozásakor.

A get parancs használata a dátum lekéréséhez

Most, hogy a dátum be van állítva, lássuk, hogyan érheti el az összetevőit. Az egyik módja a get parancs használata. Ez a táblázat bemutatja az összes get metódust a Date objektumhoz:

Javascript Date and Time Retrieve date using get

Ebben a példában egy új dátumot rendelünk egy új változóhoz, 1980. július 31-hez:

Így nézne ki, ha ezzel a módszerrel kérné le az összes egyedi dátum-összetevőt:

Bizonyos helyzetekben előfordulhat, hogy a dátumnak csak egy bizonyos részére van szüksége. Erre használhatja ezeket a módszereket. Így ellenőrizheti, hogy október 3-a van-e:

Ezt a kimenetet kapná, ha a dátum nem október 3-a lenne, és ezt ellenőrizné.

A set parancs használata a dátum módosítására

A get parancsokhoz hasonlóan léteznek a set parancsmegfelelők is. Ez a parancs lehetővé teszi a dátum-összetevők módosítását. Ez a táblázat bemutatja az összes metódust:

Javascript Date and Time Modify the date using set

Tegyük fel, hogy meg akarjuk változtatni a birthday változót erről: 1997 erre: 1980:

Most a kimenetünk az új évet mutatja. Hasonlóképpen módosíthatja a dátum többi összetevőjét is.

UTC dátummetódusok JavaScriptben

Ha a dátum-összetevőket a get metódussal kéri le, akkor azokat a felhasználó időzónájának helyi rendszerbeállításai alapján kapja meg. Alternatív megoldásként beállíthatja úgy is, hogy az időt az UTC szabvány alapján számítsa ki. Az UTC a koordinált világidőt (Coordinated Universal Time) jelenti. Ezt a getUTC metódussal teheti meg. Ez a táblázat bemutatja az összes UTC metódust a Date objektumhoz JavaScriptben:

UTC methods

Amint láthatja, az összes metódus hasonló a get parancsokhoz. A kimenetek azonban eltérőek lennének. Ezzel a kóddal tesztelheti a különbséget:

Ez a kód megmutatja az aktuális órát, valamint az órát az UTC időzónában. A számok megegyeznek, ha már az UTC időzónában tartózkodik. Az UTC használatának oka az, hogy konzisztenciát biztosít a nemzetközi zónák és régiók között.

Összegzés

Ebben az útmutatóban bemutattuk a különböző metódusokat a Date objektumhoz. Ez magában foglalta a dátumkomponensek lekérését a get metódussal, valamint azok módosítását a set metódussal. Megvizsgáltuk az UTC időzónákat is, és azt, hogyan használhatjuk őket JavaScriptben.

Végezetül, a JavaScript rengeteg beépített funkcióval rendelkezik a dátumok és idők kezelésére. Ez meglehetősen egyszerűvé teszi az összetett weboldalak programozását. További információkat olvashat a JavaScript dátum- és időfunkcióiról a Mozilla Developer Network oldalon. Ez az útmutató azonban segít elsajátítani az alapokat.

Íme további források a blogunkról, amelyek megkönnyítik a JavaScript programozást:

Kellemes kódolást!

author

Pranay Kapgate

Szerző · CloudSigma

Preslav Dobrev a CloudSigma kreatív tervezője, aki hagyományos és innovatív marketingcsatornák segítségével következetes vállalati identitás kialakítására összpontosít. Kiemelkedően képes ötvözni a művészi látásmódot a stratégiai marketinggel, hogy hatásos márkatörténeteket hozzon létre.

Hozzászólások

Még nincsenek hozzászólások. Legyen Ön az első.