Переписать функцию в ES6
const timeEveryOneMinute = () => {
let Data = new Date();
let Hour = Data.getHours();
let Minutes = Data.getMinutes();
console.log("Текущее время: " + Hour + ":" + Minutes + " ");
setTimeout(timeEveryOneMinute, 1000 * 60);
}
timeEveryOneMinute();
На курсах просят переписать в стиле ES6. Прошу Гуру форума помочь. Спасибо! |
DarkPhoenix,
вы спросите, чего в |
DateTimeFormat
DarkPhoenix,
const timeEveryOneMinute = () => {
const data = new Date(),
time = new Intl.DateTimeFormat("ru", {
hour: "2-digit",
minute: "2-digit"
}).format(data);
console.log(`Текущее время: ${time}`);
setTimeout(timeEveryOneMinute, 1000 * 60);
}
timeEveryOneMinute();
|
Оно и так стиле es6.
А в современном стиле оно как-то так:
import moment from 'moment'
import timer from 'some-super-timer'
import logger from 'some-super-logger'
timer.every(60).run(step => logger.log(
moment().format("Текущее время: HH:mm")
));
(*код вымышлен, все совпадения случайны:) ) |
|
Malleys,
а можно словами или примером, для наглядности, что не так с кодом? |
рони,
Можно предположить, что let Data и let Time противоречат этому: Цитата:
|
Dilettante_Pro,
поправил #3 |
Цитата:
Я думаю, автору интересна последняя версия JavaScript, описанная в EcmaScript2019... Конкретно пример автора может быть записан так...
(function timeEveryOneMinute() {
const date = new Date();
const hours = String(date.getHours()).padStart(2, "0");
const minutes = String(date.getMinutes()).padStart(2, "0");
console.log(`Текущее время: ${hours}:${minutes}`);
setTimeout(timeEveryOneMinute, 1000 * 60);
})();
Пример рони так...
(function timeEveryOneMinute() {
const date = new Date();
const timeOptions = {
hour: "2-digit",
minute: "2-digit"
};
const time = date.toLocaleTimeString("ru", timeOptions);
console.log(`Текущее время: ${time}`);
setTimeout(timeEveryOneMinute, 1000 * 60);
})();
Пример Aetae возможен, но требует инструментов трансформации кода, сборки, наличие node.js (использование проприетарных импортов) |
Цитата:
|
| Часовой пояс GMT +3, время: 22:35. |