Делаю таймер на JS с применением ООП. Когда хочу к TimerClass через переменную self добавить через прототип метод run выдает ошибку а если добавлю без прототипа все норм, помогите пожалуйста.
var TimerClass = function($node, $days){
var self = this;
function Timer(){
this.node = document.getElementById($node);
this.DOM = [];
this.interval;
}
Timer.prototype = {
init: function(){
console.log('Timer create!!!');
},
run: function(){
interval = setInterval(timer, 1000);
function timer(){
console.log('Hello! You run timer!!!');
}
},
stop: function(){
clearInterval(this.interval);
}
};
function constructor(){
var object = new Timer();
object.init();
self.run = object.run;
//self.prototype.run = object.run;
};
return constructor();
};
var timer = new TimerClass('node', 12);
timer.run();