⊗jsPmTmAA 322 of 505 menu

Automātiskā datumu korekcija JavaScript

JavaScript ir ļoti interesanta un noderīga īpatnība: ja, izveidojot Date objektu, tika norādīts nekorekts laika moments - tas automātiski tiks pārrēķināts korektā. Apskatīsim piemērā.

Kā jūs zināt, 35. janvāra datums neeksistē. Maksimāli iespējamā janvāra diena ir 31. Izrādās, ka mūsu 35. janvāra datums ir 4 dienas par daudz. JavaScript šajā gadījumā vienkārši pievienos šīs papildu 4 dienas nākamajam mēnesim:

let date = new Date(2018, 0, 35); console.log(date); // izdosies 4. februāris

Var norādīt ne tikai papildu dienas, bet arī mēnešus. Jāatceras, ka mēneši sākas no nulles, kas nozīmē, ka pēdējais korektais mēnesis ir 11. mēnesis. Ja norāda 12. mēnesi, tad iegūs janvāri nākamgad:

let date = new Date(2018, 12, 1); // norādam 12. mēnesi console.log(date); // iegūsies 1. janvāris 2019. gadā

Aprakstītā korekcija strādā arī mazākā virzienā. Kā jūs zināt, viszemākā mēneša diena ir diena ar numuru 1. Tāpēc, ja norāda dienu ar numuru 0, tad iegūs pēdējo iepriekšējā mēneša dienu:

let date = new Date(2018, 1, 0); // norādam nulles dienu console.log(date); // iegūsies 31. janvāris

Var arī norādīt negatīvas dienu un mēnešu vērtības. Jāatceras, ka zemākā diena ir ar numuru 1, bet zemākais mēnesis - ar numuru 0. Tas nozīmē, ka mīnus pirmā diena nonāks 2 dienas no iepriekšējā mēneša beigām, bet mīnus pirmais mēnesis nonāks vienkārši pēdējā iepriekšējā gada mēnesī:

let date = new Date(2018, 1, -1); // norādam -1 dienu console.log(date); // iegūsies 30. janvāris
let date = new Date(2018, -1, 1); // norādam -1 mēnesi console.log(date); // iegūsies 1. decembris 2017. gadā

Viss iepriekš minētais līdzīgi strādā ar stundām, minūtēm un sekundēm:

let date = new Date(2018, 0, 1, 24, 0, 0); // norādam 24. stundu console.log(date); // iegūsies 2. janvāris, 0 stundas
let date = new Date(2018, 0, 1, 25, 0, 0); // norādam 25. stundu console.log(date); // iegūsies 2. janvāris, 1 stunda

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 1, 35); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 15, 1); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 3, 31); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 1, 31); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 12, 33); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 33, 33); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 5, 0); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 0, 0); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, -12, -33); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 0, 1, 23, 0, 60); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 0, 1, 23, 60, 0); console.log(date); // kāds datums būs?

Nosakiet, kādā datumā JavaScript pārveidos šādu laika momentu:

let date = new Date(2018, 0, 1, 100, 100, 100); console.log(date); // kāds datums būs?
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt