PL
Jak pobrać aktualny czas w JavaScript?
3 points
W JavaScript do uzyskania aktualnego czasu przydatna jest klasa Date
.
Szybkie rozwiązanie:
xxxxxxxxxx
1
var now = Date.now();
2
3
console.log('Bieżący czas unix w milisekundach: ' + now);
xxxxxxxxxx
1
var now = new Date();
2
3
console.log('Bieżący czas unix w milisekundach: ' + now.getTime());
4
console.log('Bieżąca data: ' + now.toDateString());
5
console.log('Bieżący czas: ' + now.toTimeString());
6
console.log('Bieżąca data i czas: ' + now.toString());
Uwaga: podczas korzystania z metody
to...String
należy zachować ostrożność ze względu na specyficzne formatowanie danych i czasu w lokalizacji.
Interfejs API w języku JavaScript udostępnia różne metody, które pozwalają nam tworzyć własne formatowanie daty i czasu.
Metoda renderNumber
może zostać zastąpiona wbudowaną metodą padStart
, gdy używany jest nowoczesny interfejs API JavaScript.
xxxxxxxxxx
1
const renderNumber = (value, length) =>
2
{
3
let result = String(value);
4
5
for (; length > result.length; length -= 1)
6
result = '0' + result;
7
8
return result;
9
};
10
11
const renderDate = (date) =>
12
{
13
const year = renderNumber(date.getFullYear(), 4);
14
const month = renderNumber(date.getMonth() + 1, 2);
15
const day = renderNumber(date.getDate(), 2);
16
17
return `${year}.${month}.${day}`;
18
};
19
20
const renderTime = (date) =>
21
{
22
const hours = renderNumber(date.getHours(), 2);
23
const minutes = renderNumber(date.getMinutes(), 2);
24
const seconds = renderNumber(date.getSeconds(), 2);
25
const milliseconds = renderNumber(date.getMilliseconds(), 3);
26
27
return `${hours}:${minutes}:${seconds}.${milliseconds}`;
28
};
29
30
const renderDateTime = (date) =>
31
{
32
const dateText = renderDate(date);
33
const timeText = renderTime(date);
34
35
return `${dateText} ${timeText}`;
36
};
37
38
// Przykład użycia:
39
40
var now = new Date();
41
42
var date = renderDate(now);
43
var time = renderTime(now);
44
var dateTime = renderDateTime(now);
45
46
console.log('Bieżąca data: ' + date);
47
console.log('Bieżący czas: ' + time);
48
console.log('Bieżąca data i czas: ' + dateTime);
xxxxxxxxxx
1
function renderNumber(value, length) {
2
var result = String(value);
3
for(; length > result.length; length -= 1) {
4
result = '0' + result;
5
}
6
return result;
7
}
8
9
function renderDate(date) {
10
var year = date.getFullYear();
11
var month = date.getMonth() + 1;
12
var day = date.getDate();
13
14
var text = renderNumber(year, 4)
15
+ '.' + renderNumber(month, 2)
16
+ '.' + renderNumber(day, 2);
17
return text;
18
}
19
20
function renderTime(date) {
21
var hour = date.getHours();
22
var minute = date.getMinutes();
23
var second = date.getSeconds();
24
var millisecond = date.getMilliseconds();
25
26
var text = renderNumber(hour, 2)
27
+ ':' + renderNumber(minute, 2)
28
+ ':' + renderNumber(second, 2)
29
+ '.' + renderNumber(millisecond, 3);
30
return text;
31
}
32
33
function renderDateTime(date) {
34
var dateText = renderDate(date);
35
var timeText = renderTime(date);
36
37
return dateText + ' ' + timeText;
38
}
39
40
// Przykład użycia:
41
42
var now = new Date();
43
44
var date = renderDate(now);
45
var time = renderTime(now);
46
var dateTime = renderDateTime(now);
47
48
console.log('Bieżąca data: ' + date);
49
console.log('Bieżący czas: ' + time);
50
console.log('Bieżąca data i czas: ' + dateTime);