m1.on('finish', function () {
console.log(`таймер сброшен`);
clearTimeout(timer1)
calculate()
})
внутрь функции таймера, то при уничтожении, теоретически, должен убиваться и его листенер...var timer1 = setTimeout(function () {
m1.on('finish', function () {
console.log(`таймер сброшен`);
clearTimeout(timer1)
calculate()
})
console.log(`Таймер закончился`)
calculate()
}, 1000*5)
exports.run = (m1) => {
var timer1 = setTimeout(function () {
calculate(timer1)
}, 1000*5)
m1.on('finish', function () {
console.log(`таймер сброшен`);
clearTimeout(timer1)
calculate() // зачем тут ещё раз вызов?
})
function calculate(t) {
// тут некоторые действия
clearTimeout(t);
}
}, 1000*5, myvar1, myvar2, ...)
return;
- это выход из любой внутренней функции. типа break для циклов.
А пока - он только предполагает.