Datum in čas JavaScript

V tej vadnici boste s pomočjo primerov spoznali datum in uro v JavaScript.

V JavaScript sta datum in čas predstavljena z Dateobjektom. DateObjekt vsebuje podatke o datumu in času in tudi različne metode.

Datum JavaScript določa obdobje EcmaScript, ki predstavlja milisekunde od 1. januarja 1970 UTC . Ta datum in ura sta enaka epohi UNIX (prevladujoča osnovna vrednost za računalniško zabeležene vrednosti datuma in časa).

Ustvarjanje datumskih objektov

Obstajajo štirje načini za ustvarjanje datuma.

  • nov datum ()
  • nov datum (milisekunde)
  • nov datum (niz datuma)
  • nov datum (leto, mesec, dan, ure, minute, sekunde, milisekunde)

nov datum ()

Datumski objekt lahko ustvarite s pomočjo new Date()konstruktorja. Na primer

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

Izhod

 6. julij 2020 12:03:49 GMT + 0545 (nepalski čas)

Tu new Date()ustvari nov datumski objekt s trenutnim datumom in lokalnim časom.

nov datum (milisekunde)

DateObjekt vsebuje številko, ki predstavlja milisekund od leta 1. januarja 1970 UTC .

new Date(milliseconds)ustvari nov datumski objekt z dodajanjem milisekund ničelnemu času. Na primer

 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

Opomba : 1000 milisekund je enako 1 sekundi.

nov datum (datumski niz)

new Date(date string) ustvari nov datumski predmet iz niza datumov.

V JavaScript so na splošno tri oblike zapisa datuma.

Formati datumov ISO

Datumski objekt lahko ustvarite tako, da prenesete formate datumov ISO. Na primer

 // 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

Prenesete lahko tudi samo leto in mesec ali samo leto. Na primer

 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

Določene ure lahko prenesete tudi na datume ISO.

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

Opomba : Datum in čas sta ločeni s črko T . In UTC čas definiran s kapitalsko Ž .

Kratek in dolg format datuma

Drugi dve obliki zapisa datuma sta oblika kratkega datuma in oblika dolgega datuma .

 // 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

nov datum (leto, mesec, dan, ure, minute, sekunde, milisekunde)

new Date(year, month,… )ustvari nov datumski objekt tako, da posreduje določen datum in uro. Na primer

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

Posredovani argument ima določen vrstni red.

Če so sprejete štiri številke, to predstavlja leto, mesec, dan in ure. Na primer

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

Če sta podana dva argumenta, to predstavlja leto in mesec. Na primer

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

Opomba : Če posredujete samo en argument, se to obravnava kot milisekunde. Zato morate za uporabo te oblike zapisa datuma predložiti dva argumenta.

V JavaScript se meseci štejejo od 0 do 11 . Januar je 0, december pa 11 .

Datumske metode JavaScript

V objektu JavaScript Date so na voljo različne metode.

Metoda Opis
zdaj () Vrne številčno vrednost, ki ustreza trenutnemu času (število milisekund, ki je preteklo od 1. januarja 1970, 00:00:00 UTC)
getFullYear () Pridobi leto glede na lokalni čas
getMonth () Pridobi mesec, od 0 do 11 po lokalnem času
getDate () Pridobi dan v mesecu (1-31) glede na lokalni čas
getDay () Pridobi dan v tednu (0-6) glede na lokalni čas
getHours () Pridobi uro od 0 do 23 glede na lokalni čas
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

Če želite izvedeti več o datumu in uri v JavaScript, obiščite Demistificiranje datuma in ure.

Zanimive Članki...