JavaScript datum i vrijeme

U ovom ćete tutorijalu uz primjere naučiti o datumu i vremenu u JavaScript-u.

U JavaScriptu su Dateobjekt i datum i vrijeme . DateObjekt pruža informacije o datumu i vremenu, a također pruža razne metode.

JavaScript datum definira EcmaScript epohu koja predstavlja milisekunde od 1. siječnja 1970. UTC . Ovaj datum i vrijeme jednaki su UNIX-ovoj epohi (pretežna osnovna vrijednost za računarski snimljene vrijednosti datuma i vremena).

Izrada datumskih objekata

Postoje četiri načina za stvaranje objekta datuma.

  • novi datum ()
  • novi datum (milisekunde)
  • novi datum (datumski niz)
  • novi datum (godina, mjesec, dan, sati, minute, sekunde, milisekunde)

novi datum ()

Pomoću new Date()konstruktora možete stvoriti datumski objekt . Na primjer,

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

Izlaz

 Ponedjeljak, 6. srpnja 2020. 12:03:49 GMT + 0545 (nepalsko vrijeme)

Ovdje new Date()kreira novi datumski objekt s trenutnim datumom i lokalnim vremenom.

novi datum (milisekunde)

DateObjekta sadrži broj koji predstavlja milisekunde od 1. siječnja 1970. UTC .

new Date(milliseconds)stvara novi datumski objekt dodavanjem milisekundi nultom vremenu. Na primjer,

 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

Napomena : 1000 milisekundi jednako je 1 sekundi.

novi datum (datumski niz)

new Date(date string) kreira novi datumski objekt iz niza datuma.

U JavaScript-u općenito postoje tri formata za unos datuma.

ISO formati datuma

Objekt datuma možete stvoriti prosljeđivanjem ISO formata datuma. Na primjer,

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

Također možete proći samo godinu i mjesec ili samo godinu. Na primjer,

 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

Također možete prenijeti određeno vrijeme na ISO datume.

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

Napomena : Datum i vrijeme su odvojeni s velikim slovom T . I UTC vrijeme je definiran kapitala Z .

Kratki i dugi format datuma

Druga dva formata datuma su kratki format i dugi format 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

novi datum (godina, mjesec, dan, sati, minute, sekunde, milisekunde)

new Date(year, month,… )stvara novi datumski objekt dodavanjem određenog datuma i vremena. Na primjer,

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

Proslijeđeni argument ima određeni redoslijed.

Ako se donesu četiri broja, to predstavlja godinu, mjesec, dan i sate. Na primjer,

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

Slično tome, ako su proslijeđena dva argumenta, to predstavlja godinu i mjesec. Na primjer,

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

Napomena : Ako proslijedite samo jedan argument, on se tretira kao milisekunde. Stoga morate proslijediti dva argumenta da biste koristili ovaj format datuma.

U JavaScript-u mjeseci se računaju od 0 do 11 . Siječanj je 0, a prosinac 11 .

JavaScript datumske metode

U objektu JavaScript Date dostupne su razne metode.

Metoda Opis
sada() Vraća numeričku vrijednost koja odgovara trenutnom vremenu (broj milisekundi proteklih od 1. siječnja 1970. 00:00:00 UTC)
getFullYear () Dobiva godinu prema lokalnom vremenu
getMonth () Dobiva mjesec, od 0 do 11 prema lokalnom vremenu
getDate () Dobiva dan u mjesecu (1-31) prema lokalnom vremenu
getDay () Dobiva dan u tjednu (0-6) prema lokalnom vremenu
getHours () Dobiva sat od 0 do 23 prema lokalnom vremenu
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

Da biste saznali više o datumu i vremenu u JavaScript-u, posjetite Demistificiranje datuma i vremena.

Zanimljivi članci...