ÐокÑаÑений годинник
важливÑÑÑÑ: 5
У Ð½Ð°Ñ Ñ ÐºÐ»Ð°Ñ Clock. Ðа даний Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð²Ñн виводиÑÑ ÑÐ°Ñ ÐºÐ¾Ð¶Ð½Ñ ÑекÑндÑ.
class Clock {
constructor({ template }) {
this.template = template;
}
render() {
let date = new Date();
let hours = date.getHours();
if (hours < 10) hours = '0' + hours;
let mins = date.getMinutes();
if (mins < 10) mins = '0' + mins;
let secs = date.getSeconds();
if (secs < 10) secs = '0' + secs;
let output = this.template
.replace('h', hours)
.replace('m', mins)
.replace('s', secs);
console.log(output);
}
stop() {
clearInterval(this.timer);
}
start() {
this.render();
this.timer = setInterval(() => this.render(), 1000);
}
}
СÑвоÑÑÑÑ Ð½Ð¾Ð²Ð¸Ð¹ ÐºÐ»Ð°Ñ ExtendedClock, Ñкий ÑÑпадковÑÑ Ð²Ñд Clock Ñ Ð´Ð¾Ð´Ð°Ñ precision â кÑлÑкÑÑÑÑ Ð¼Ñ Ð¼Ñж âÑоканнÑмиâ. Типово, ÑнÑеÑвал повинен бÑÑи 1000 (1 ÑекÑнда).
- ÐÐ°Ñ ÐºÐ¾Ð´ повинен бÑÑи Ñ ÑайлÑ
extended-clock.js - Ðе змÑнÑйÑе оÑигÑнал
clock.js. РозÑиÑÑе його.
ÐÑдкÑиÑи пÑÑоÑниÑÑ Ð´Ð»Ñ Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ.
class ExtendedClock extends Clock {
constructor(options) {
super(options);
let { precision = 1000 } = options;
this.precision = precision;
}
start() {
this.render();
this.timer = setInterval(() => this.render(), this.precision);
}
};