„JavaScript“ data ir laikas

Šioje pamokoje sužinosite apie „JavaScript“ datą ir laiką, naudodamiesi pavyzdžiais.

„JavaScript“ datą ir laiką žymi Dateobjektas. DateObjektas suteikia datos ir laiko informaciją ir taip pat suteikia įvairius metodus.

„JavaScript“ data apibrėžia „ EcmaScript“ epochą , atspindinčią milisekundes nuo 1970 m . Sausio 1 d., UTC . Ši data ir laikas sutampa su UNIX epocha (vyraujanti bazinė kompiuteriu įrašytų datos ir laiko reikšmių reikšmė).

Datos objektų kūrimas

Yra keturi datos objekto sukūrimo būdai.

  • nauja data ()
  • nauja data (milisekundės)
  • nauja data (datos eilutė)
  • nauja data (metai, mėnuo, diena, valandos, minutės, sekundės, milisekundės)

nauja data ()

Datos objektą galite sukurti naudodami new Date()konstruktorių. Pavyzdžiui,

 const timeNow = new Date(); console.log(timeNow); // shows current date and time

Rezultatas

 Pirmadienis 2020 m. Liepos 6 d. 12:03:49 GMT + 0545 (Nepalo laikas)

Čia new Date()sukuriamas naujas datos objektas su dabartine data ir vietiniu laiku.

nauja data (milisekundės)

DateObjektas yra numerį, kuri atstovauja milisekundžių nuo sausio 1 d 1970 UTC .

new Date(milliseconds)sukuria naują datos objektą pridedant milisekundes prie nulio laiko. Pavyzdžiui,

 const time1 = new Date(0); // epoch time console.log(time1); // Thu Jan 01 1970 05:30:00 // 100000000000 milliseconds after the epoch time const time2 = new Date(100000000000) console.log(time2); // Sat Mar 03 1973 15:16:40

Pastaba : 1000 milisekundžių yra lygi 1 sekundei.

nauja data (datos eilutė)

new Date(date string) sukuria naują datos objektą iš datos eilutės.

„JavaScript“ paprastai yra trys datos įvesties formatai.

ISO datos formatai

Datos objektą galite sukurti perėję ISO datos formatus. Pavyzdžiui,

 // ISO Date(International Standard) const date = new Date("2020-07-01"); // the result date will be according to UTC console.log(date); // Wed Jul 01 2020 05:45:00 GMT+0545

Taip pat galite praleisti tik metus ir mėnesį arba tik metus. Pavyzdžiui,

 const date = new Date("2020-07"); console.log(date); // Wed Jul 01 2020 05:45:00 GMT+0545 const date1 = new Date("2020"); console.log(date1); // Wed Jul 01 2020 05:45:00 GMT+0545

Taip pat galite perduoti konkretų laiką į ISO datas.

 const date = new Date("2020-07-01T12:00:00Z"); console.log(date); // Wed Jul 01 2020 17:45:00 GMT+0545

Pastaba : Data ir laikas atskirti kapitalo raide T . Ir UTC laikas yra apibrėžti kapitalo Z .

Trumpas ir ilgas datos formatas

Kiti du datų formatai yra trumpas ir ilgas .

 // short date format "MM/DD/YYYY" const date = new Date("03/25/2015"); console.log(date); // Wed Mar 25 2015 00:00:00 GMT+0545 // long date format "MMM DD YYYY" const date1 = new Date("Jul 1 2020"); console.log(date1); // Wed Jul 01 2020 00:00:00 GMT+0545 // month and day can be in any order const date2 = new Date("1 Jul 2020"); console.log(date2); // Wed Jul 01 2020 00:00:00 GMT+0545 // month can be full or abbreviated. Also month names are insensitive. // comma are ignored const date3 = new Date("July 1 2020"); console.log(date3); // Wed Jul 01 2020 00:00:00 GMT+0545 const date4 = new Date("JULY, 1, 2020"); console.log(date4); // Wed Jul 01 2020 00:00:00

nauja data (metai, mėnuo, diena, valandos, minutės, sekundės, milisekundės)

new Date(year, month,… )sukuria naują datos objektą praleidžiant konkrečią datą ir laiką. Pavyzdžiui,

 const time1 = new Date(2020, 1, 20, 4, 12, 11, 0); console.log(time1); // Thu Feb 20 2020 04:12:11

Patvirtintas argumentas turi konkrečią tvarką.

Jei perduodami keturi skaičiai, tai reiškia metus, mėnesį, dieną ir valandas. Pavyzdžiui,

 const time1 = new Date(2020, 1, 20, 4); console.log(time1); // Thu Feb 20 2020 04:00:00

Panašiai, jei pateikiami du argumentai, tai reiškia metus ir mėnesį. Pavyzdžiui,

 const time1 = new Date(2020, 1); console.log(time1); // Sat Feb 01 2020 00:00:00

Pastaba : jei perduodate tik vieną argumentą, jis laikomas milisekundėmis. Taigi, norėdami naudoti šį datos formatą, turite pateikti du argumentus.

„JavaScript“ mėnesiai skaičiuojami nuo 0 iki 11 . Sausis yra 0, o gruodis - 11 .

„JavaScript“ datos metodai

„JavaScript Date“ objekte yra įvairių būdų.

Metodas apibūdinimas
dabar () Grąžina skaitinę vertę, atitinkančią dabartinį laiką (milisekundžių skaičius, praėjęs nuo 1970 m. Sausio 1 d. 00:00:00 UTC)
„getFullYear“ () Gauna metus pagal vietos laiką
„getMonth“ () Gauna mėnesį nuo 0 iki 11 pagal vietos laiką
getDate () Gauna mėnesio dieną (1–31) pagal vietos laiką
„getDay“ () Gauna savaitės dieną (0–6) pagal vietos laiką
„getHours“ () Gauna valandą nuo 0 iki 23 pagal vietinį laiką
getMinutes Gets the minute from 0 to 59 according to local time
getUTCDate() Gets the day of the month (1-31) according to universal time
setFullYear() Sets the full year according to local time
setMonth() Sets the month according to local time
setDate() Sets the day of the month according to local time
setUTCDate() Sets the day of the month according to universal time

Example: Date Methods

 const timeInMilliseconds = Date.now(); console.log(timeInMilliseconds); // 1593765214488 const time = new Date; // get day of the month const date = time.getDate(); console.log(date); // 30 // get day of the week const year = time.getFullYear(); console.log(year); // 2020 const utcDate = time.getUTCDate(); console.log(utcDate); // 30 const event = new Date('Feb 19, 2020 23:15:30'); // set the date event.setDate(15); console.log(event.getDate()); // 15 // Only 28 days in February! event.setDate(35); console.log(event.getDate()); // 7

Formatting a Date

Unlike other programming languages, JavaScript does not provide a built-in function for formatting a date.

However, you can extract individual bits and use it like this.

 const currentDate = new Date(); const date = currentDate.getDate(); const month = currentDate.getMonth(); const year = currentDate.getFullYear(); // show in specific format let monthDateYear = (month+1) + '/' + date + '/' + year; console.log(monthDateYear); // 7/3/2020

Note: The above program gives inconsistent length as date and month have single-digit and double-digit.

AutoCorrection in Date Object

When you assign out of range values in the Date object, it auto-corrects itself. For example,

 const date = new Date(2008, 0, 33); // Jan does not have 33 days console.log(date);

Output

 Sat Feb 02 2008

Norėdami daugiau sužinoti apie „JavaScript“ datą ir laiką, apsilankykite Datos ir laiko atskleidimo puslapyje.

Įdomios straipsniai...