⊗jsPmTmAA 322 of 505 menu

Automatinis datų koreguojimas JavaScript

JavaScript turi labai įdomią ir naudingą savybę: jei kuriant Date objektą būtų nurodytas neteisingas laiko momentas - jis automatiškai bus perskaičiuotas į teisingą. Pažiūrėkime pavyzdžiu.

Kaip žinote, 35 sausio dienos nėra. Maksimali galima sausio diena - 31. Pasirodo, kad mūsų 35 sausio data turi 4 papildomas dienas. JavaScript tokiu atveju tiesiog pridės šias papildomas 4 dienas prie kito mėnesio:

let date = new Date(2018, 0, 35); console.log(date); // gausis vasario 4 d.

Galima nurodyti ne tik perteklines dienas, bet ir mėnesius. Tuo pat metu reikia atsiminti, kad mėnesiai prasideda nuo nulio, o tai reiškia, kad paskutinis teisingas mėnuo - 11-tas. Jei nurodysite 12-tą mėnesį, tai gausite kitų metų sausį:

let date = new Date(2018, 12, 1); // nurodome 12-tą mėnesį console.log(date); // gausis 2019 metų sausio 1 d.

Aprašytas koregavimas veikia ir mažėjimo kryptimi. Kaip žinote, pati mažiausia mėnesio diena yra diena su numeriu 1. Todėl, jei nurodysite dieną su numeriu 0, gausite paskutinę praėjusio mėnesio dieną:

let date = new Date(2018, 1, 0); // nurodome nulinę dieną console.log(date); // gausis sausio 31 d.

Taip pat galima nurodyti neigiamas dienų ir mėnesių reikšmes. Tuo pat metu reikia atsiminti, kad mažiausia diena turi numerį 1, o mažiausias mėnuo - numerį 0. Tai reiškia, kad minus pirmoji diena patenka į 2 dieną nuo praėjusio mėnesio pabaigos, o minus pirmasis mėnuo patenka tiesiog į paskutinį praėjusių metų mėnesį:

let date = new Date(2018, 1, -1); // nurodome -1 dieną console.log(date); // gausis sausio 30 d.
let date = new Date(2018, -1, 1); // nurodome -1 mėnesį console.log(date); // gausis 2017 metų gruodžio 1 d.

Visa tai, kas pasakyta aukščiau, analogiškai veikia su valandomis, minutėmis ir sekundėmis:

let date = new Date(2018, 0, 1, 24, 0, 0); // nurodome 24-ą valandą console.log(date); // gausis sausio 2 d., 0 valandų
let date = new Date(2018, 0, 1, 25, 0, 0); // nurodome 25-ą valandą console.log(date); // gausis sausio 2 d., 1 valanda

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 1, 35); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 15, 1); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 3, 31); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 1, 31); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 12, 33); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 33, 33); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 5, 0); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 0, 0); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, -12, -33); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 0, 1, 23, 0, 60); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 0, 1, 23, 60, 0); console.log(date); // kokia data bus?

Nustatykite, į kokią datą JavaScript pakeis šį laiko momentą:

let date = new Date(2018, 0, 1, 100, 100, 100); console.log(date); // kokia data bus?
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti