Ku dhawaad ​​nooc kasta oo arji ah oo ku qoran JavaScript wuxuu la shaqeeyaa waqtiyo ama taariikho xoogaa awood ah. Bilowgii, tani waxay ku koobnayd taariikhda API ee la dhisay. API-kan waxa ku jira shaqada aasaasiga ah, laakiin aad ayay u xaddidan tahay waxa uu samayn karo. Maktabadaha qolo saddexaad sida Moment.js, iyo API-yada la dhisay sida Intl APIs iyo API Temporal-ka cusub, waxay ku daraan dabacsanaan aad u weyn oo lagu shaqeynayo wakhtiyada iyo taariikhaha. Kacitaanka iyo Dhicista daqiiqada.js Moment.js waa maktabad JavaScript ah oo leh agab awood leh oo lagu shaqeeyo wakhtiyada iyo taariikhaha. Waxa ku jira astaamo ka maqan API-ga Taariikhda aasaasiga ah, sida khalkhalgelinta aagga wakhtiga, oo ka dhigaysa hawlo badan oo caadi ah mid fudud. Daqiiqada sidoo kale waxa ku jira hawlaha qaabaynta taariikhaha iyo wakhtiyada. Waxay noqotay maktabad si weyn loo isticmaalo codsiyo badan oo kala duwan. Si kastaba ha ahaatee, Moment sidoo kale waxay lahayd qaybteeda arrimaha. Waa maktabad weyn, waxayna si weyn ugu dari kartaa cabbirka xirmada codsiga. Sababtoo ah maktabaddu ma taageerto ruxitaanka geedka (sifada xirmooyinka casriga ah ee ka saari kara qaybaha aan la isticmaalin ee maktabadaha), dhammaan maktabadda daqiiqada ayaa lagu daray xitaa haddii aad isticmaasho hal ama laba ka mid ah hawlaheeda. Arrin kale oo xilligan taagan ayaa ah xaqiiqda ah in walxaha ay abuurto ay yihiin kuwo la beddeli karo. U yeedhida hawlaha qaar ee shayga daqiiqada waxay leedahay waxyeelooyin waxayna wax ka beddeshaa qiimaha shaygaas. Tani waxay u horseedi kartaa dabeecad lama filaan ah ama kutaanno. 2020, ilaaliyayaasha Moment waxay go'aansadeen inay maktabadda u dhigaan habka dayactirka. Ma jiro horumarin sifo cusub oo la sameeyay, kuwa ilaalinayana waxay ku talinayaan inaan loo isticmaalin mashruucyo cusub. Waxaa jira maktabado kale oo JavaScript ah, sida taariikhda-fns, laakiin waxaa jira ciyaaryahan cusub magaalada, API si toos ah loogu dhisay JavaScript: Ku meel gaar. Waa jaangooyo cusub oo buuxinaya godadka asalka taariikhda API iyo sidoo kale xaliya qaar ka mid ah xaddidaadyada laga helo Moment iyo maktabadaha kale. Waa maxay ku meel gaadh Ku meel gaadhku waa wakhti iyo taariikh cusub API oo lagu daray heerka ECMAScript, kaas oo qeexaya JavaScript casriga ah. Laga bilaabo Maarso 20266, waxa ay gaadhay Marxaladda 4aad ee habka TC39 (gudiga kormeeraya soo jeedinta iyo ku-darka luqadda JavaScript), waxaana lagu dari doonaa nooca xiga ee qeexitaanka ECMAScript. Waxaa horayba looga hirgaliyay dhowr browser: Chrome 144+ iyo Firefox 139+, iyadoo Safari la filayo inay dhawaan raacdo. Buuxinta badan ayaa sidoo kale diyaar u ah daalacashada aan la taageerin iyo Node.js. Ku meel gaadhka API waxa uu abuuraa shay, guud ahaan, metela daqiiqado. Kuwani waxay noqon karaan stamps-waqtiga buuxa iyo taariikhda ee aaga wakhti cayiman, ama waxay noqon karaan tusaale guud oo ah "saacada derbiga" iyada oo aan wax aag wakhti ah ama macluumaad taariikhi ah lahayn. Qaar ka mid ah sifooyinka ugu muhiimsan ee ku meel gaarka ah waxaa ka mid ah:

Waqtiyo leh ama aan lahayn taariikho.Waxyaabaha ku meel gaadhka ahi waxa uu matali karaa wakhti cayiman oo taariikh gaar ah, ama wakhti aan lahayn wax macluumaad taariikheed ah. Taariikh gaar ah, oo aan wakhti lahayn, ayaa sidoo kale la matali karaa. Taageerada aagga wakhtiga.Waxyaabaha ku meel gaadhka ah ayaa si buuxda uga warqaba aagga wakhtiga waxaana loo rogi karaa aagagga wakhtiyada kala duwan. Daqiiqadu sidoo kale waxay taageertaa aagagga wakhtiga, laakiin waxay u baahan tahay maktabad-wakhti-wakhti dheeraad ah. Isbeddella'aan.Marka shayga ku meel gaadhka ah la sameeyo, lama beddeli karo. Isbeddellada xisaabta wakhtiga ama aagga waqtiga waxba kama beddelaan shayga hoose. Taa beddelkeeda, waxay abuuraan shay cusub oo ku meel gaar ah. 1-kusalaysan tusmaynta.Isha caadiga ah ee dhiqlaha leh Taariikhda API (iyo sidoo kale daqiiqad) waa in bilaha eber-indexed. Taas macneheedu waxa weeye January waa bisha 0, halkii ay ka ahaan lahayd bisha 1 sida aynu wada fahamno nolosha dhabta ah. Ku meel gaadhka ah ayaa tan ku hagaajiya iyada oo la adeegsanayo tusmaynta 1-ku-salaysan - Janaayo waa bisha 1. Waxaa lagu dhex dhisay browserka. Maadaama Temporal uu API ku yahay browserka laftiisa, waxba kuma darto cabbirka xidhmada codsigaaga.

Waxa kale oo muhiim ah in la ogaado in taariikhda API aysan baxayn. Halka Temporal uu ka sarreeyo API kan, lama saarayo ama lama go'in. Codsiyo badan ayaa jabi lahaa haddii daalacayaashu ay si lama filaan ah uga saaraan Taariikhda API. Si kastaba ha ahaatee, sidoo kale maskaxda ku hay in Moment hadda loo tixgeliyo mashruuc dhaxalgal ah oo ku saabsan qaabka dayactirka. Maqaalka intiisa kale, waxaan ku eegi doonaa qaar ka mid ah "cuntooyinka" loogu guurayo koodka ku saleysan Moment-ga ee API Temporal-ka cusub. Aan bilowno dib u habeynta! Abuuritaanka Taariikhda iyo Waqtiga Walxaha Kahor intaanan ku dhaqmin taariikhaha iyo waqtiyada, waa inaan abuurnaa walxo iyaga matalaya. Si aad u abuurto walax daqiiqad ah oo matalaysa taariikhda iyo wakhtiga hadda, isticmaal daqiiqada shaqada. hadda = daqiiqad (); console.log (hadda); // Daqiiqado<2026-02-18T21:26:29-05:00>

Shaygan hadda waa la qaabayn karaa ama waa la maamuli karaa hadba sida loo baahdo.

// u beddel UTC //digniin: Tani waxay beddeshaa shayga daqiiqada oo waxay gelisaa qaabka UTC! console.log (now.utc()); // Daqiiqado<2026-02-19T02:26:29Z>

// daabac xarig la qaabeeyey - ogow inay isticmaalayso wakhtiga UTC hadda console.log (hadda. qaabka // 02/19/2026 02:27:07 subaxnimo

Waxa ugu muhiimsan ee lagu xasuusan karo daqiiqada waa in shayga daqiiqada had iyo jeer ay ku jiraan macluumaadka ku saabsan wakhtiga iyo taariikhda. Haddii aad u baahan tahay oo kaliya inaad ku shaqeyso macluumaadka wakhtiga, tani badanaa way fiican tahay, laakiin waxay keeni kartaa dabeecad lama filaan ah xaaladaha sida Waqtiga Badbaadinta Maalinta ama sannadaha boodada, halkaas oo taariikhda ay saameyn ku yeelan karto xisaabinta waqtiga. Ku meel gaadhka ah ayaa aad u dabacsan Waxaad samayn kartaa shay matalaya taariikhda hadda iyo wakhtiga adiga oo abuuraya shay ku meel gaar ah. Tani waxay ka dhigan tahay hal dhibic oo lagu qeexay wakhtiga laga soo bilaabo "xilligii" (saqda dhexe UTC Janaayo 1, 1970). Ku meel gaadhka ahi waxa uu isla markaaba tixraaci karaa isla markaaba iyadoo la raacayo saxnaanta heerka nanosecond. const hadda = Ku meel gaadh.Hadda.instan ();

// eeg nanoseconds cayriin tan iyo waagii console.log (hadda.epochNanoseconds); // 1771466342612000000n

// qaabka UTC console.log (hadda.toString()); // 2026-02-19T01:55:27.844Z

// qaab wakhti gaar ah console.log (hadda.toString ({timeZone: 'America/New_York'})); // 2026-02-18T20:56:57.905-05:00

Ku meel gaadhka ah.Waxyaabaha degdega ah waxa kale oo la abuuri karaa wakhti iyo taariikh gaar ah iyada oo la isticmaalayo habka taagan.

const myInstant = ku meel gaadh ah

// Ku qaabbi dagdaga aagga wakhtiga deegaanka. Ogsoonow in tani ay xakamaynayso oo kaliya // qaabaynta - uma beddelo shayga sida moment.utc u sameeyo. console.log (myInstant.toString ({timeZone: 'America/New_York'})); // 2026-02-18T21:10:00-05:00

Waxa kale oo aad abuuri kartaa noocyo kale oo walxaha ku meel gaadhka ah, oo ay ku jiraan:

Temporal.PlainDate: Taariikh aan lahayn macluumaad wakhti ah. Temporal.PlainTime: Waqti aan lahayn macluumaad taariikheed. Temporal.ZonedDateTime: Taariikh iyo wakhti ku yaal aag wakhti gaar ah.

Mid kasta oo kuwan ka mid ah waxa uu leeyahay hab lagu magacaabi karo shay qeexaya taariikhda iyo/ama wakhtiga, ama xadhig taariikheed oo la kala saarayo. // Taariikh kaliya const today = Ku meel gaadh.PlainDate.laga bilaabo ({ sanadka: 2026, bisha: 2, // note waxaan isticmaaleynaa 2 Febraayo maalinta: 18 } console.log (maanta.toString ()); // 2026-02-18

// Hal waqti qadada qadada = ku meel gaadh.PlainTime.laga bilaabo({ saac: 12 } console.log (qadadaTime.toString()); // 12:00:00

// Taariikhda iyo wakhtiga ee aagga wakhtiga bari ee Maraykanka const dueAt = Temporal.ZonedDateTime.laga bilaabo ({ TimeZone: 'America/New_York', sanadka: 2026, bisha: 3, maalin: 1, saac: 12, daqiiqo: 0, labaad: 0 } console.log (dueAt.toString ()); // 2026-03-01T12:00:00-05:00[America/New_York]

Falanqaynta Waxaan daboolnay abuurista barnaamij ee macluumaadka taariikhda iyo waqtiga. Hadda aan eegno falanqaynta. Falanqaynta waa hal aag oo Moment uu ka dabacsan yahay API-ga ku-meel-gaarka ah. Waxaad kala saari kartaa xadhkaha taariikhda adiga oo u gudbiya wakhtiga shaqada. Hal dood, Moment waxay filaysaa xargaha taariikhda ISO, laakiin waxaad isticmaali kartaa qaabab kale haddii aad bixiso dood labaad oo qeexaysa qaabka taariikhda la isticmaalayo.

const isoDate = daqiiqad ('2026-02-21T09:00:00'); const formattedTaariikhda = daqiiqad ('2/21/26 9:00:00', 'M/D/YY h:mm:ss');

console.log (isoDate); // Daqiiqado<2026-02-21T09:00:00-05:00>

console.log (qaabaysan Taariikhda); // Daqiiqado<2026-02-21T09:00:00-05:00>

Noocyadii hore, Moment ayaa samayn doonta qiyaasta ugu fiican si loo kala saaro xadhig kasta oo si aan kala sooc lahayn loo habeeyey. Tani waxay keeni kartaa natiijooyin aan la saadaalin karin. Tusaale ahaan, waa 02-03-2026 Febraayo 2 mise Maarso 3? Sababtan awgeed, noocyada cusub ee daqiiqaddu waxay muujinayaan digniin caan ah haddii la yiraahdo iyada oo aan la helin xariijinta taariikhda qaabaysan ISO (haddii aan doodda labaad ee qaabka la rabo la bixin). Ku meel gaadhka ahi waxa kaliya oo ay kala saari doontaa xadhig taariikheed oo si gaar ah loo habeeyey. Xadhiggu waa inuu waafaqsan yahay qaabka ISO 8601 ama kordhintiisa, RFC 9557. Haddii xadhig taariikheed aan waafaqsanayn loo gudbiyo hab, ku meel gaadh ah ayaa tuuraya RangeError.

// Isticmaalka xargaha taariikhda RFC 9557 const myDate = ku meel gaadh ah console.log (myDate.toString ({timeZone: 'America/New_York'})); // 2026-02-21T09:00:00-05:00

// Isticmaalka xadhig taariikheed oo aan la garanayn const otherDate = Ku meel gaadh.Isla markiiba.laga bilaabo ('2/21/26 9:00:00'); // Qalad Range: Cilad ku meel gaar ah: Dabeecad aan sax ahayn iyadoo la eegayo qiimaha sanadka.

Shuruudaha saxda ah ee xadhiga taariikhda waxay ku xidhan yihiin nooca shayga Ku meel gaadhka ah ee aad abuurayso. Tusaalaha kore, Temporal.Instant wuxuu u baahan yahay ISO buuxa8601 ama RFC 9557 xadhkaha tariikhda ee qeexaya taariikhda iyo wakhtiga oo leh aag wakhti ka baxsan, laakiin waxa kale oo aad samayn kartaa PlainDate ama PlainTime shay adiga oo isticmaalaya qayb hoose oo ka mid ah qaabka taariikhda. const myDate = Ku meel gaadh.PlainDate.laga bilaabo ('2026-02-21'); console.log (myDate.toString ()); // 2026-02-21

const myTime = Ku meel gaadh.PlainTime.laga bilaabo ('09:00:00'); console.log (myTime.toString ()); // 09:00:00

Ogsoonow in xargahani ay tahay inay wali u hoggaansamaan qaabka la filayo, haddii kale qalad waa la tuurayaa.

// Isticmaalka xadhko waqti aan waafaqsanayn. Kuwani dhamaantood waxay tuurayaan RangeError. Ku meel gaadh.PlainTime.laga bilaabo('9:00'); Ku meel gaadh.PlainTime.laga bilaabo ('9:00:00 AM');

Tilmaanta Pro: Xakamaynta xargaha aan ISO-da ahayn Sababtoo ah ku-meel-gaadhka ayaa mudnaanta siiya isku halaynta, iskuma dayi doono in la qiyaaso qaabka xadhigga sida 02-01-2026. Haddii ishaada xogta ay isticmaasho xadhkaha noocaan ah, waxaad u baahan doontaa inaad sameyso wax ka beddelka xargaha si aad dib ugu habayso qiyamka xargaha ISO sida 2026-02-01 ka hor intaadan isku dayin inaad ku isticmaasho ku meel gaar ah.

Qaabaynta Marka aad haysato shay daqiiqad ama ku meel gaar ah, waxa aad u badantahay in aad u bedesho xadhig qaabaysan mar uun. Tani waa tusaale in Moment uu xoogaa ka sii daran yahay. Waxaad u wacdaa qaabka qaabka shayga oo leh xargo calaamado ah oo qeexaya qaabka taariikhda la rabo. taariikhda taariikhda = daqiiqad ();

console.log (taariikhda.qaabka ('MM/DD/YAHAY')); // 02/22/2026

console.log(date.format('MMMM Do YYYY, h:mm:ss a')); // Febraayo 22, 2026, 8:18:30 galabnimo

Dhanka kale, Temporal waxay kaaga baahan tahay inaad noqoto mid hadal badan. Walxaha ku meel gaadhka ah, sida Instant, waxay leeyihiin habka toLocaleString kaas oo aqbala xulasho qaabaynta kala duwan ee loo cayimay inay yihiin sifooyinka shay.

const date = Ku meel gaadh.Hadda.intant();

// iyada oo aan lahayn wax dood ah, waxaan heli doonaa qaabka caadiga ah ee degaanka hadda console.log (date.toLocaleString ()); // 2/22/2026, 8:23:36 PM (iyada oo loo malaynayo in deegaanka en-US)

// dhaaf ikhtiyaarka qaabaynta si loo soo saaro xadhig qaab gaar ah console.log (date.toLocaleString ('en-US', { bil: 'dheer', maalin: 'nambar', sanadka: 'nambar', saac: '2-nambar', daqiiqo: '2-nambar' })); // Febraayo 22, 2026 saacada 8:23 galabnimo

// kaliya ku dhaaf meelaha aad rabto ee xargaha qaabka console.log (date.toLocaleString ('en-US', { bil: 'gaaban', maalin: 'nambar' })); // Febraayo 22

Qaabaynta taariikhda ku meel gaadhka ah waxay dhab ahaantii isticmaashaa Intl.DateTimeFormat API (kaas oo mar horeba diyaar ugu ah daalacashada casriga ah) hoostiisa. Taasi waxay la macno tahay in aad samayn karto shay DateTimeFormat dib loo isticmaali karo oo leh xulashooyinka qaabaynta caadada kuu ah, ka bacdina walxaha ku meel gaadhka ah u gudbi qaabkooda. Sababtan awgeed, ma taageerto qaababka taariikhda gaarka ah sida Moment. Haddii aad u baahan tahay wax sida 'Q1 2026' ama habayn kale oo khaas ah, waxa laga yaabaa inaad u baahato koodka habaynta taariikhda caadada ah ama aad gaadho maktabad qolo saddexaad ah. const formatter = cusub Intl.DateTimeFormat ('en-US', { bisha: '2-nambar', maalin: '2-nambar', sanadka: 'nambar' }

const date = Ku meel gaadh.Hadda.intant(); console.log (formatter.format (taariikhda)); // 02/22/2026

Calaamadaha qaabaynta daqiiqada way fududahay in la qoro, laakiin maaha kuwo deegaanka u fiican. Qaabka xargaha "hard code" sida habka bisha/maalintii. Faa'iidada isticmaalka shayga qaabeynta, sida Temporal sameeyo, waa in ay si toos ah ula qabsan doonto meel kasta oo la bixiyo oo ay isticmaasho qaabka saxda ah. const date = Ku meel gaadh.Hadda.intant();

const formatOptions = { bisha: 'nambar', maalin: 'nambar', sanadka: 'nambar' };

console.log(date.toLocaleString('en-US', formatOptions)); // 2/22/2026

console.log(date.toLocaleString('en-GB', formatOptions)); // 22/02/2026

Xisaabinta taariikhda Codsiyo badan, waxaad u baahan doontaa inaad ku dhameysato xisaabinta qaar taariikhda. Waxaa laga yaabaa inaad rabto inaad ku darto ama ka jarto cutubyada waqtiga (maalmo, saacado, ilbiriqsi, iwm.). Tusaale ahaan, haddii aad haysato taariikhda hadda, waxaa laga yaabaa inaad rabto inaad tusiso isticmaalaha taariikhda 1 toddobaad laga bilaabo hadda. Walaxda daqiiqaduhu waxay leeyihiin habab ay ka mid yihiin isku-dar iyo kala-goyn oo fuliya hawlgalladan. Hawlahani waxay qaataan qiime iyo halbeeg, tusaale ahaan: ku dar(7, 'maalmo'). Mid ka mid ah farqiga ugu muhiimsan ee u dhexeeya Moment iyo Temporal, si kastaba ha ahaatee, waa in marka la samaynayo xisaabinta taariikhda, shayga hoose waa la bedelay oo qiimihiisii ​​asalka ahaa lumay. hadda = daqiiqad ();

console.log (hadda); // Daqiiqado<2026-02-24T20:08:36-05:00>

const nextWeek = hadda. ku dar (7, 'maalmo'); console.log (Toddobaadka soo socda); // Daqiiqado<2026-03-03T20:08:36-05:00>

// Gotcha - shayga asalka ah waa la beddelay console.log (hadda); // Daqiiqado<2026-03-03T20:08:36-05:00>

Si looga fogaado luminta taariikhda asalka ah, waxaad wici kartaa clone on shayga daqiiqada si aad u abuurto nuqul. hadda= daqiiqad (); const nextWeek = hadda.clone () ku dar (7, 'maalmo');

console.log (hadda); // Daqiiqado<2026-02-24T20:12:55-05:00>

console.log (Toddobaadka soo socda); // Daqiiqado<2026-03-03T20:12:55-05:00>

Dhanka kale, walxaha ku meel gaadhka ah waa kuwo aan isbedelayn. Markaad abuurto shay sida Instant, PlainDate, iyo wixii la mid ah, qiimaha shaygaas waligii isma beddeli doono. Walxaha ku meel gaadhka ahi waxa kale oo ay leeyihiin habab isku-dar iyo kala-goyn. Ku meel gaadhka ah waa wax yar oo door ah oo ku saabsan cutubyada waqtiga lagu dari karo noocyada shayga. Tusaale ahaan, kuma dari kartid maalmo isla markiiba:

const hadda = Ku meel gaadh.Hadda.instan (); const nextWeek = hadda. ku dar ({maalmo: 7}); // Qalad Range: Cilad ku meel gaar ah: Cutubka ugu weyn ma noqon karo unug taariikheed

Tani waa sababta oo ah walxaha degdega ahi waxay u taagan yihiin meel gaar ah wakhtiga UTC waana kalandarka-agnostic. Sababtoo ah dhererka maalintu wuu isbedeli karaa iyadoo lagu salaynayo xeerarka aaga wakhtiga sida wakhtiga kaydinta iftiinka maalinta, xisaabintan lama heli karo isla markiiba. Si kastaba ha ahaatee, waxaad samayn kartaa qalliinkan noocyada kale ee walxaha, sida PlainDateTime: const now = Ku meel gaadh.Now.plainDateTimeISO(); console.log (hadda.toLocaleString ()); // 2/24/2026, 8:23:59 PM

const nextWeek = hadda. ku dar ({maalmo: 7});

// Ogow in PlainDateTime-kii asalka ahaa aanu isbeddelin console.log (hadda.toLocaleString ()); // 2/24/2026, 8:23:59 PM

console.log (Todobaadka soo socda.toLocaleString()); // 3/3/2026, 8:23:59 PM

Waxa kale oo aad xisaabin kartaa inta wakhtiga u dhexeeya laba shay ama daqiiqad ku meel gaar ah. Shaqada kala duwanaanta ee Moment, waxaad u baahan tahay inaad bixiso cutub loogu talagalay granularity, haddii kale waxay soo celin doontaa farqiga millise seconds. const date1 = daqiiqad ('2026-02-21T09:00:00'); const date2 = daqiiqad ('2026-02-22T10:30:00');

console.log (taariikhda2.diff(taariikhda1)); // 91800000

console.log (date2.diff (taariikhda1, 'maalmo')); // 1

Si tan loo sameeyo shay ku meel gaadh ah, waxaad u gudbin kartaa shay kale oo ku meel gaadh ah ilaa iyo hababkiisa. Tani waxay soo celinaysaa shay ku meel gaar ah.Muddada shay ka kooban macluumaad ku saabsan kala duwanaanshaha wakhtiga. Shayga Muddada wuxuu leeyahay astaamo qayb kasta oo ka mid ah faraqa, sidoo kale wuxuu dhalin karaa xargaha muddada ISO 8601 oo matalaya farqiga waqtiga.

const date1 = Ku meel gaadh.PlainDateTime.laga bilaabo ('2026-02-21T09:00:00'); const date2 = Temporal.PlainDateTime.laga bilaabo ('2026-02-22T10:30:00');

// WeynUnit waxay qeexaysaa cutubka ugu weyn ee waqtiga si loo matalo // in xisaabinta muddada const diff = date2. tan iyo (taariikhda1, {ugu weynUnit: 'day'});

console.log (diff.days); // 1

console.log (kala duwanaansho.hours); // 1

console.log (diff.minutes); // 30

console.log (diff.toString ()); // P1DT1H30M // (ISO 8601 xadhig muddada: 1 maalin, 1 saac, 30 daqiiqo)

Isbarbardhigga Taariikhaha iyo Waqtiyada Daqiiqado iyo ku meel gaar labaduba waxay kuu oggolaanayaan inaad is barbardhigto taariikhaha iyo waqtiyada si aad u go'aamiso midka ka horreeya kan kale, laakiin la qaado habab kala duwan API-ga. Moment waxay bixisaa habab ay ka mid yihiin isBefore, isAfter, iyo isSame si loo barbardhigo laba shay. const date1 = daqiiqad ('2026-02-21T09:00:00'); const date2 = daqiiqad ('2026-02-22T10:30:00');

console.log (date1.isBefore (taariikhda2)); // run

Ku meel gaadhka ahi waxa uu isticmaalaa hab isbarbardhig taagan si uu u sameeyo isbarbardhigga laba shay oo isku nooc ah. Waxay soo noqotaa -1 haddii taariikhda ugu horreysa ay timaado ka labaad, 0 haddii ay siman yihiin, ama 1 haddii taariikhda hore ay timaado ka labaad. Tusaalaha soo socdaa wuxuu tusinayaa sida loo barbar dhigo laba shay oo PlainDate. Labada doodood ee Temporal.PlainDate.compare waa inay ahaadaan walxo PlainDate.

const date1 = Temporal.PlainDate.laga bilaabo ({sanadka: 2026, bisha: 2, maalin: 24}); const date2 = Temporal.PlainDate.laga bilaabo ({sanadka: 2026, bisha: 3, maalin: 24});

// taariikhda 1 waxay timaadaa ka hor taariikhda2, sidaas darteed -1 console.log (Temporal.PlainDate.compare (taariikhda 1, taariikhda2));

// Khalad haddii aan isku dayno inaan is barbar dhigno laba shay oo noocyo kala duwan ah console.log // Qaladka Nooca: Cilad ku meel gaadh ah: Goobaha PlainTaariikhda aan sax ahayn ayaa la bixiyay.

Gaar ahaan, tani waxay fududaynaysaa in la kala saaro noocyo kala duwan oo walxaha Ku-meel-gaadhka ah si taariikhaysan. // Soo koobid ku meel gaadh ah.PlainTaariikhda walxaha taariikhaha const = [ ...];

// isticmaal Temporal.PlainDate.compare sida shaqada isbarbardhigga dates.sort (Temporal.PlainDate.compare);

Isbeddellada Aagga Waqtiga Maktabada daqiiqada xudunta u ah ma taageerto beddelka aaga wakhtiga. Haddii aad u baahan tahay shaqeyntan, waxaad sidoo kale u baahan tahay inaad ku rakibto xirmada wakhtiga-waqtiga-waqtiga. Xirmadani maaha mid geed-gaaban, sidaas darteed waxay si weyn ugu dari kartaa cabbirka xidhmadaada. Markaad rakibto aagga-waqtiga-waqtiga, waxaad u bedeli kartaa walxaha daqiiqada goobo waqtiyo kala duwan oo leh habka tz. Sida hawlgallada kale ee daqiiqadaha, tani waxay beddeshaa waxa hooseshay. // Marka loo eego wakhtiga Bari ee Maraykanka hadda = daqiiqad (); console.log (hadda); // Daqiiqado<2026-02-28T20:08:20-05:00>

// U beddelo wakhtiga Baasifigga. // Wakhtigii asalka ahaa ee Bariga waa lumay. hadda.tz ('America/Los_Angeles'); console.log (hadda); // Daqiiqado<2026-02-28T17:08:20-08:00>

Shaqada aagga wakhtiga waxa lagu dhisay API ku meel gaadh ah marka la isticmaalayo Temporal.ZonedDateTime shay. Walxahaan waxaa ku jira hab lehTimeZone oo soo celiya ZonedDateTime cusub oo ka dhigan waqti isku mid ah, laakiin aagga waqtiga la cayimay. // Mar labaad, marka loo eego wakhtiga Bari ee Maraykanka const hadda = Ku meel gaadh.Now.zonedDateTimeISO(); console.log (hadda.toLocaleString ()); // 2/28/2026, 8:12:02 PM EST

// U beddelo wakhtiga Baasifigga const nowPacific = hadda. withTimeZone ('America/Los_Angeles'); console.log (haddaPacific.toLocaleString()); // 2/28/2026, 5:12:02 PM PST

// Walaxda asalka ahi waxba kama beddelin console.log (hadda.toLocaleString ()); // 2/28/2026, 8:12:02 PM EST

Fiiro gaar ah: Qiimaha qaabaysan ee ay soo celisoLocaleString waa, sida magacu tilmaamayo, ku-tiirsanaan. Koodhka muunada waxa lagu sameeyay gudaha en-US, markaa qaabku waa sidan: 2/28/2026, 5:12:02 PM PST. Deegaan kale, tani way ka duwanaan kartaa. Tusaale ahaan, gudaha en-GB, waxaad heli doontaa wax la mid ah 28/2/2026, 17:12:02 GMT-8. Dib-u-soo-noolaynta Adduunka-dhabta ah Ka soo qaad in aanu dhisayno abka jadwalaynta dhacdooyinka aagagga wakhtiga. Qayb ka mid ah abkan waa shaqo, getEventTimes, kaas oo qaata xadhig ISO 8601 ah oo matalaya wakhtiga iyo taariikhda dhacdada, aagga wakhtiga maxalliga ah, iyo aagga wakhtiga la beegsanayo. Shaqadu waxay abuurtaa xadhkaha wakhtiga iyo taariikhda la habeeyey ee dhacdada labada goobood ee wakhtiga. Haddii shaqada la siiyo xadhig galinta oo aan ahayn xadhig waqti/taariikh sax ah, waxay tuuraysaa khalad. Waa kuwan hirgelinta asalka ah, iyadoo la adeegsanayo Moment (sidoo kale u baahan isticmaalka xirmada wakhtiga-waqtiga-waqtiga).

soo dejinta daqiiqad laga bilaabo 'waqtiga-waqtiga-waqtiga';

shaqada getEventTimes (inputString, userTimeZone, targetTimeZone) { const timeFormat = 'MMM D, YYYY, h:mm:ss a z';

// 1. Abuur daqiiqadda bilowga ah ee aagga wakhtiga isticmaalaha const dhacdoTime = moment.tz( Xarig-gelinta, moment.ISO_8601, // Filo xarigga ISO 8601 run, // Falanqaynta adag userTimeZone ;

// Tuur cilad haddii inputString uusan matalin taariikh sax ah haddii (! EventTime.isValid()) { tuur Khalad cusub ('Taariikh/waqti aan sax ahayn')); }

// 2. Xisaabi wakhtiga la beegsanayo // MUHIIM: Waa in aan xidhno, ama 'eventTime' waa isbeddelaa weligiis! const targetTime = dhacdoTime.clone() .tz(targetTimeZone);

soo noqo { local: eventTime.format(timeFormat), bartilmaameed: targetTime.format(timeFormat), }; }

jadwalka joogtada ah = getEventTimes '2026-03-05T15:00-05:00', 'Maraykanka/New_York', 'Europe/London', ;

console.log (jadwal.local); // Mar 5, 2026, 3:00:00 galabnimo EST

console.log (jadwalka.bartilmaameedka); // Mar 5, 2026, 8:00:00 galabnimo GMT

Tusaalahan, waxaan isticmaaleynaa qaabka taariikhda la filayo ee ISO 8601, kaas oo si waxtar leh loogu dhisay daqiiqad. Waxaan sidoo kale isticmaaleynaa falanqayn adag, taas oo macnaheedu yahay Moment isku dayi maayo in uu ku qiyaaso xadhig taariikheed oo aan ku habboonayn qaabka. Haddii xadhig taariikheed aan ISO ahayn la dhaafo, waxay keeni doontaa shay taariikh aan sax ahayn, waxaanan tuurnaa qalad. Hirgelinta ku meel gaadhka ahi waxay u egtahay mid la mid ah, laakiin waxay leedahay faraqyo dhawr ah oo muhiim ah.

shaqada getEventTimes (inputString, userTimeZone, targetTimeZone) { // 1. Si toos ah u kala saar galinta isla markiiba, ka dibna samee // ZonedDateTime aagga isticmaalaha. deg-deg ah = ku meel gaadh ah.Instant.from(inputString); const dhacdoTime = instant.toZonedDateTimeISO(userTimeZone);

// 2. U beddelo aagga la beegsanayo // Tani waxay si toos ah u soo celinaysaa shay CUSUB; 'eventTime' waa badbaado. const targetTime = dhacdoTime.withTimeZone (targetTimeZone);

// 3. U qaabeeya adoo isticmaalaya Intl (lagu dhex dhisay) ikhtiyaarka ikhtiyaarka ah = { sanadka: 'nambar', bil: 'gaaban', maalin: 'nambar', saac: 'nambar', daqiiqo: '2-nambar', labaad: '2-nambar', timeZoneName: 'gaaban' };

soo noqo { maxaliga ah: EventTime.toLocaleString (navigator.language, fursadaha), bartilmaameed: targetTime.toLocaleString(navigator.language, doorashooyin) }; }

jadwalka joogtada ah = getEventTimes '2026-03-05T15:00-05:00', 'Maraykanka/New_York', 'Europe/London', ;

console.log (jadwal.local); // Mar 5, 2026, 3:00:00 galabnimo EST

console.log (jadwalka.bartilmaameedka); // Mar 5, 2026, 8:00:00 PM GMT

Waqtiga la joogo, waa inaan si cad u qeexnaa xargaha qaabka ee xargaha taariikhda ka soo baxay. Iyadoo aan loo eegin goobta ama goobta isticmaaluhu, wakhtiyada dhacdada had iyo jeer waxaa loo qaabayn doonaa sida Mar 5, 2026, 3:00:00pm EST. Sidoo kale, ma aha inaan si cad u tuurno ka reeban. Haddii xadhig aan sax ahayn loo gudbiyo Temporal.Instant.from, Temporal ayaa noo tuuri doonta marka laga reebo. Mid ka mid ah shay in la xuso ayaa ah in xitaa iyadoo si adag loo falanqeynayo, nooca daqiiqada uu weli yahay mid dabacsan. Ku meel gaadhku wuxuu u baahan yahay aagga wakhtiga oo la dhimay dhamaadka xadhigga. Waa inaad sidoo kale ogaataa in maadaama aan isticmaaleyno navigator.language, koodkaani wuxuu ku shaqeyn doonaa oo kaliya deegaanka browserka, maadaama navigator aan lagu qeexin deegaanka Node.js. Hirgelinta ku meel gaadhka ah waxay isticmaashaa browserka deegaanka ee hadda (navigator.language), markaa isticmaaluhu wuxuu si toos ah u heli doonaa wakhtiyada dhacdada oo loo qaabeeyey qaabka wakhtiga maxaliga ah. Gudaha en-US, tani waa Maarso 5, 2026, 3:00:00 galabnimo EST. Si kastaba ha ahaatee, haddii isticmaaluhu uu joogo London, tusaale ahaan, wakhtiyada dhacdada waxa loo qaabayn doonaa 5 Mar 2026, 15:00:00 GMT-5. Soo koobid

Ficil Daqiiqado.js Ku meel gaadh Waqtiga hadda daqiiqad() Ku meel gaadhka ah.Hadda Falanqaynta ISO daqiiqad(str) Ku meel gaadh.Isla markiiba.laga bilaabo(str) Waqti ku dar .ku dar(7, 'maalmo') (mutates) .ku dar ({maalmo: 7}) (shay cusub) Farqiga .kala duwan (kale, 'saacadaha') .ilaa(kale).saacadaha Aagga waqtiga .tz ('Aagga/Magaca') .lehTimeZone ('Zone/Magaca')

Jaleecada hore, kala duwanaanshiyaha ayaa laga yaabaa inuu ka yara duwanaado (iyo xaalada ku meel gaarka ah, mararka qaarkood aad u hadal badan oo aad u adag) syntax, laakiin waxaa jira faa'iidooyin dhowr ah oo muhiim ah oo ku saabsan isticmaalka ku meel gaarka ah ee Moment.js:

Inaad si cad u noqoto waxay la macno tahay yaabab yar iyo cayayaan aan la qorshayn. Daqiiqado ayaa laga yaabaa inay u muuqato mid dabacsan, laakiin waxay ku lug leedahay "shaqo mala awaal," taasoo mararka qaarkood keeni karta taariikho khaldan. Haddii aad siiso Temporal wax aan sax ahayn, waxay tuuraysaa khalad. Haddii koodku socdo, waxaad ogtahay inaad haysato taariikh sax ah. Daqiiqadu waxay ku dari kartaa cabbir muhiim ah xidhmada codsiga, gaar ahaan haddii aad isticmaalayso xidhmada wakhtiga-waqtiga-daqiiqada ah. Ku meel gaadhku waxba ma soo kordhinayo (marka lagu soo dejiyo daalacashadaada bartilmaameedka). Isbeddella'aantu waxay ku siinaysaa kalsooni ah inaadan waligaa lumin ama aad dib u qori doonin xogta markaad samaynayso beddelka taariikhda iyo hawlgallada. Metelaadyo kala duwan oo wakhtiga ah (Instant, PlainDateTime, ZonedDateTime) taas oo ku xidhan shuruudahaaga, halka Moment ay had iyo jeer ku duuban tahay hareeraha UTC timestamp. Temporal waxay u isticmaashaa Intl API-yada qaabaynta taariikhda, taas oo macnaheedu yahay inaad yeelan karto qaabaynta garashada deegaanka adigoon u baahnayn inaad si cad u qeexdo calaamadaha.

Qoraalada Ku Saabsan Buuxinta Badan Sidaan hore u soo sheegnay, waxa jira buuxbuuxinta ku meel gaadhka ah, oo loo qaybiyay xidhmo npm ah oo lagu magacaabo @js-temporal/polyfill. Haddii aad rabto inaad isticmaasho Temporal maanta, waxaad u baahan doontaa buuxinta polyfill si aad u taageerto daalacashada sida Safari ee aan weli soo dirin API-ga. Warka xun ee kan ayaa ah in ay ku dari doonto cabbirkaaga xirmada. Akhbaarta wanaagsan ayaa ah in ay wali si aad ah ugu darto wax ka yar daqiiqad ama waqti-waqti-waqtiyeedka. Halkan waxaa ah isbarbardhigga cabbirrada xirmooyinka sida ay soo warisay Bundlephobia.com, oo ah shabakad soo bandhigta macluumaadka cabbirrada xirmada npm (guji magac xirmo kasta si aad u aragto falanqaynta Bundlephobia):

Xidhmada La yareeyay La yareeyay & la geliyey @js-ku-meel-gaar ah/buuxinta 154.1 kB 44.1 kB daqiiqad 294.4 kB 75.4 kB aagga-waqtiga-daqiiqada ah 1 MB 114.2 kB

Buuxinta polyfillku sidoo kale taariikh ahaan waxay lahayd arrimo wax qabad oo ku saabsan isticmaalka xusuusta, iyo wakhtiga qorista, waxaa loo arkaa inay ku jirto xaalad alfa ah. Sababtaas awgeed, waxaa laga yaabaa inaadan rabin inaad u isticmaasho wax soo saarka ilaa ay ka gaarto xaalad bisil. Akhbaarta kale ee wanaagsan ayaa ah in la rajeynayo in polyfill-ka aan loo baahan doonin waqti dheer (haddii aadan u baahnayn inaad taageerto daalacashada hore, dabcan). Waqtiga qorista, Temporal wuxuu ku soo raray Chrome, Edge, iyo Firefox. Ilaa hadda diyaar uguma aha Safari, in kasta oo ay u muuqato in lagu heli karo calanka runtime ee Horudhac Farsamo ee ugu dambeeyay.

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free