În acest tutorial, veți afla despre data și ora în JavaScript cu ajutorul unor exemple.
În JavaScript, data și ora sunt reprezentate de Date
obiect. Date
Obiectul furnizează informațiile data și ora și oferă , de asemenea , diferite metode.
O dată JavaScript definește epoca EcmaScript care reprezintă milisecunde de la 1 ianuarie 1970 UTC . Această dată și oră este aceeași cu epoca UNIX (valoarea de bază predominantă pentru valorile datei și orei înregistrate pe computer).
Crearea obiectelor de dată
Există patru moduri de a crea un obiect de dată.
- data nouă ()
- data nouă (milisecunde)
- data nouă (șir de date)
- data nouă (an, lună, zi, ore, minute, secunde, milisecunde)
data nouă ()
Puteți crea un obiect de dată folosind new Date()
constructorul. De exemplu,
const timeNow = new Date(); console.log(timeNow); // shows current date and time
Ieșire
Luni 06 Iul 2020 12:03:49 GMT + 0545 (Ora Nepalului)
Aici, new Date()
creează un nou obiect de dată cu data curentă și ora locală.
data nouă (milisecunde)
Date
Obiectul conține un număr care reprezintă milisecunde de la o ianuarie 1970 UTC .
new Date(milliseconds)
creează un nou obiect de dată prin adăugarea milisecundelor la ora zero. De exemplu,
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
Notă : 1000 de milisecunde este egală cu 1 secundă.
data nouă (șir de date)
new Date(date string)
creează un nou obiect de dată dintr-un șir de date.
În JavaScript, există în general trei formate de introducere a datei.
Formate de date ISO
Puteți crea un obiect de dată prin trecerea formatelor de dată ISO. De exemplu,
// 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
De asemenea, puteți trece doar anul și luna sau numai anul. De exemplu,
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
De asemenea, puteți trece o anumită oră la datele ISO.
const date = new Date("2020-07-01T12:00:00Z"); console.log(date); // Wed Jul 01 2020 17:45:00 GMT+0545
Notă : Data și ora sunt separate cu majusculă T . Și ora UTC este definit cu capital Z .
Format de dată scurtă și lungă
Celelalte două formate de dată sunt formatul de dată scurt și formatul de dată lungă .
// 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
data nouă (an, lună, zi, ore, minute, secunde, milisecunde)
new Date(year, month,… )
creează un nou obiect de dată prin trecerea datei și orei specifice. De exemplu,
const time1 = new Date(2020, 1, 20, 4, 12, 11, 0); console.log(time1); // Thu Feb 20 2020 04:12:11
Argumentul trecut are o ordine specifică.
Dacă sunt trecute patru numere, aceasta reprezintă anul, luna, ziua și orele. De exemplu,
const time1 = new Date(2020, 1, 20, 4); console.log(time1); // Thu Feb 20 2020 04:00:00
În mod similar, dacă sunt trecute două argumente, aceasta reprezintă anul și luna. De exemplu,
const time1 = new Date(2020, 1); console.log(time1); // Sat Feb 01 2020 00:00:00
Notă : dacă treceți un singur argument, acesta este tratat ca milisecunde. Prin urmare, trebuie să treceți două argumente pentru a utiliza acest format de dată.
În JavaScript, lunile sunt numărate de la 0 la 11 . Ianuarie este 0 și decembrie este 11 .
Metode date JavaScript
Există diferite metode disponibile în obiectul JavaScript Date.
Metodă | Descriere |
---|---|
acum() | Returnează valoarea numerică corespunzătoare timpului curent (numărul de milisecunde scurs de la 1 ianuarie 1970 00:00:00 UTC) |
getFullYear () | Obține anul în funcție de ora locală |
getMonth () | Obține luna, de la 0 la 11 în funcție de ora locală |
getDate () | Obține ziua lunii (1-31) în funcție de ora locală |
getDay () | Obține ziua săptămânii (0-6) în funcție de ora locală |
getHours () | Obține ora de la 0 la 23 în funcție de ora locală |
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
Pentru a afla mai multe despre data și ora în JavaScript, vizitați Demistificarea datei și orei.